[movitz-cvs] CVS update: movitz/eval.lisp

Frode Vatvedt Fjeld ffjeld at common-lisp.net
Wed Jul 21 14:14:29 UTC 2004


Update of /project/movitz/cvsroot/movitz
In directory common-lisp.net:/tmp/cvs-serv14191

Modified Files:
	eval.lisp 
Log Message:
Teach movitz-eval and movitz-constantp about coerce.

Date: Wed Jul 21 07:14:29 2004
Author: ffjeld

Index: movitz/eval.lisp
diff -u movitz/eval.lisp:1.6 movitz/eval.lisp:1.7
--- movitz/eval.lisp:1.6	Wed Apr 14 14:56:08 2004
+++ movitz/eval.lisp	Wed Jul 21 07:14:29 2004
@@ -9,7 +9,7 @@
 ;;;; Created at:    Thu Nov  2 17:45:05 2000
 ;;;; Distribution:  See the accompanying file COPYING.
 ;;;;                
-;;;; $Id: eval.lisp,v 1.6 2004/04/14 21:56:08 ffjeld Exp $
+;;;; $Id: eval.lisp,v 1.7 2004/07/21 14:14:29 ffjeld Exp $
 ;;;;                
 ;;;;------------------------------------------------------------------
 
@@ -66,7 +66,7 @@
 	      ((muerte.cl:quote) t)
 	      ((muerte.cl:not)
 	       (movitz-constantp (second form)))
-	      ((muerte.cl:+ muerte.cl:- muerte.cl:*)
+	      ((muerte.cl:+ muerte.cl:- muerte.cl:* muerte.cl:coerce)
 	       (every (lambda (sub-form)
 			(movitz-constantp sub-form environment))
 		      (cdr form)))))
@@ -146,5 +146,9 @@
     (apply (translate-program (car form) :muerte.cl :cl)
 	   (mapcar (lambda (sub-form)
 		     (movitz-eval sub-form env nil))
+		   (cdr form))))
+   ((muerte.cl:coerce)
+    (apply #'coerce
+	   (mapcar (lambda (arg) (movitz-eval arg env nil))
 		   (cdr form))))
    (t (error "Don't know how to compile constant compound form ~A" form))))





More information about the Movitz-cvs mailing list