Putting it together
We will create a run procedure that executes ASL expressions
(define run
(lambda (string)
(eval-program (scan&parse string))))
We can also use SLLGEN to set up a read-eval-print loop
(define read-eval-print
(sllgen:make-rep-loop
"--> " ; the prompt
eval-program ; the evaluator
(sllgen:make-stream-parser
the-lexical-spec
the-grammar))) ; the parser