Improve parser - add wolfsheep prims, infix ability
[clnl] / src / main / model.lisp
index a9de7be5081ac10b86555cc321f9c020ec8037d8..1927ff5847f9740e8d393c6da4642dab87e0189e 100644 (file)
@@ -54,7 +54,7 @@ DESCRIPTION:
           (read-sections (append section (list line))))))))
      (read-sections))))
   (make-model
-   :code (format nil "~{~A~^~%~}" (nth 0 sections))
+   :code (clnl-code-parser:parse (clnl-lexer:lex (format nil "~{~A~^~%~}" (nth 0 sections))))
    :interface (parse-interface (nth 1 sections))
    :info (nth 2 sections)
    :turtle-shapes (nth 3 sections)
@@ -222,9 +222,6 @@ DESCRIPTION:
    :ymin (view-min-pycor view)
    :ymax (view-max-pycor view))))
 
-(defun parse-code (model)
- (clnl-code-parser:parse (clnl-lexer:lex (model-code model))))
-
 ; For now, we keep the code hidden in this package
 (defun globals (model)
  "GLOBALS MODEL => GLOBALS
@@ -247,7 +244,7 @@ DESCRIPTION:
     (intern (string-upcase (car pair)) clnl:*model-package*)
     (cadr pair)))
   (append
-   (clnl-code-parser:globals (parse-code model))
+   (clnl-code-parser:globals (model-code model))
    (remove nil
     (mapcar
      (lambda (widget)