- ((< 50 (- *line-no* (car form))) "Forms can't be over 50 lines long")))))
- (defevaluator :normal "::"
- (constantly "No internal symbols from other packages"))
-
- (defevaluator :normal "." (constantly nil))
- )
+ ((< 50 (- *line-no* (car form))) "Forms can't be over 50 lines long")
+ (t (setf *form-ended-on-same-line* (= *line-no* (car form))) nil)))))
+ (defevaluator :normal "::" (constantly "No internal symbols from other packages"))
+ (defevaluator :first-symbol "\\n" (constantly "No new line after opening form"))
+ (defevaluator :first-symbol " " (constantly "No space after opening parens"))
+ (defevaluator :first-symbol ""
+ (lambda ()
+ ;(format t "HMMM: ~A ~A ~A~%" *form-stack* *line-no* *col-no*)
+ (cond
+ ((and *form-stack* (/= (1+ (cadr (car *form-stack*))) *col-no*))
+ "All form elements must be indented equally")
+ (t (set-state :normal)))))
+ (defevaluator :normal " " (constantly "Only one space between items of a form"))
+ (defevaluator :normal "." (constantly nil)))