*- valid keywords
begin
halt
obstacle
add
to
move north south east west 
robot do until

BEGIN bEGIN Begin

*- valid variable names

a
ab
cde
hand
hello
abcdef
abcdefg
waterfly

Duke
HeLLo
TEST


*- valid integers    
0
2
35
678
4321
55555
674747
12345678


*- valid punctuation

= ; >

*- other data files and such



  *- lots of errors in this one 
  
  *-   twentyfive is too long 
  one  twentyfive   15 ;

  *-  no separator between end and ; in end;  
  begin   ;   test  end;   ok

  *-  + is an invalid token
  paint  *  rob  *-   B   twentysix   ;

  *- #B is an invalid token and so is -*
  move   #B  east   -*  x 

  *- all integers are invalid, 03 has leading 0, 123456789 is too long, 
  *-   no   negative numbers   
  BEgin same as beGIN 03 123456789  0  -3

 *- >= is not a valid token 
  fred >= tom

 *-  one15; is invalid, add6tosum is invalid, starburstmove too long  
 ok one15;  add6tosum starmove movestar  starburstmove
 
  
 *- program 1
 begin 60 80        
   obstacle 7 11 ;   
   robot biff 6  8 ; 
   skip = 6 ; 
   move biff east skip ; 
  halt 
 
      begin   80 100              *-  room has height 80 and width 100  
      obstacle 8 11 ;            *-  an obstacle at (8,11)  
      obstacle 9 2 ;            *-  an obstacle at (9,2)  
      obstacle 5 6 ;            *-  an obstacle at (5,6) 
      robot rob 3 2 ;            *-  robot rob starts at (3,2)  
      wall = 13 ;         *-  a wall of obstacles 
      j = 1 ;    
      do    
       obstacle wall j ;    
       add 1 to j ;    
     until j  >  10 ;     
     run = 4 ;                 *-   move robot  
     move rob east run ;    
     move rob south 11 ;    
     move rob east run ;    
     move rob north 6  ;    
     move rob west 7 ;    
     halt    

begin 50 50
  robot shr 20 31 ;
  halt
      

    begin 50 60
       obstacle 29 17 ;
       halt
       

    begin 40 50
      v = 3 ;
      add 4 to v ;
    halt



123456789  *- too long
045        *- don't start with 0
-456       *- don't recognize negative numbers

