commit d7b637ece7882d1b28799d5954eb55412db0bcd6 parent b221526cb72abd39c6a2f090d167906b32496102 Author: Bertrand BRUN <bertrand0brun@gmail.com> Date: Thu, 13 Jan 2011 23:14:52 +0100 Ajout de la variable meval-op qui contient un ensemble de fonction pour mini-meval Diffstat:
| M | implementation/divers.lisp | | | 7 | +++++++ |
| A | implementation/meval-op.lisp | | | 73 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| M | lisp/main.lisp | | | 1 | + |
3 files changed, 81 insertions(+), 0 deletions(-)
diff --git a/implementation/divers.lisp b/implementation/divers.lisp @@ -1,6 +1,13 @@ ;; variables "locales" : documentation (defvar documentation '(function variable struct)) ;; TODO +(defvar meval-op '(car cdr funcall apply mapcar last + - * / read caaaar caaadr caadar caaddr cadaar cadadr caddar cadddr + cdaaar cdaadr cdadar cdaddr cddaar cddadr cdddar cddddr caaar caadr cadar caddr cdaar cdadr cddar + cdddr caar cadr cdar cddr first second third fourth fifth sixth seventh eighth ninth tenth + tree-equal char schar string string= make-string )) + + + ;; TODO : décider de quelles "primitives" on a besoin. ;; "Primitives" : ;; - (%asm in-values out-values clobber-registers instructions) diff --git a/implementation/meval-op.lisp b/implementation/meval-op.lisp @@ -0,0 +1,73 @@ +(setf meval-op (make-etat + car + caaaar + caaadr + caadar + caaddr + cadaar + cadadr + caddar + cadddr + cdaaar + cdaadr + cdadar + cdaddr + cddaar + cddadr + cdddar + cddddr + caaar + caadr + cadar + caddr + cdaar + cdadr + cddar + cdddr + caar + cadr + cdar + cddr + first + second + third + fourth + fifth + sixth + seventh + eighth + ninth + tenth + tree-equal + char + schar + string + string= + make-string + equal + eql + eq + cdr + cons + list + oddp + symbolp + numberp + stringp + equalp + + + - + * + / + = + < + > + <= + >= + read + error + funcall + assoc + mload + mini-meval +)) diff --git a/lisp/main.lisp b/lisp/main.lisp @@ -15,5 +15,6 @@ (load "squash-lisp") (load "compilation") (load "equiv-tests") +(load "../implementation/meval-op") (provide 'main)