Issue #24 - Prevent segfaults during analysis

This commit is contained in:
Justin Ethier 2016-06-23 22:18:18 -04:00
parent 0db31ea6d9
commit b0d40fe51a

View file

@ -346,10 +346,18 @@
(analyze-self-evaluating exp))
((quoted? exp) (analyze-quoted exp))
((variable? exp) (analyze-variable exp))
((assignment? exp) (analyze-assignment exp env))
((definition? exp) (analyze-definition exp env))
((if? exp) (analyze-if exp env))
((lambda? exp) (analyze-lambda exp env))
((and (assignment? exp)
(not (null? (cdr exp))))
(analyze-assignment exp env))
((and (definition? exp)
(not (null? (cdr exp))))
(analyze-definition exp env))
((and (if? exp)
(not (null? (cdr exp))))
(analyze-if exp env))
((and (lambda? exp)
(not (null? (cdr exp))))
(analyze-lambda exp env))
;; experimenting with passing these back to eval
((compound-procedure? exp)