X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=lispstrack.lisp;h=8a78bf50d8979a03f1e1ca9f9c2f635e90766308;hb=b555a69d351b6be0ed61343d79a80771957a7413;hp=9395aec00cd88b7c7ab5a64af1170cec045663e0;hpb=0051195db753db40c7b42ad1e947d2a606af12dd;p=jscl.git diff --git a/lispstrack.lisp b/lispstrack.lisp index 9395aec..8a78bf5 100644 --- a/lispstrack.lisp +++ b/lispstrack.lisp @@ -386,8 +386,6 @@ (define-compilation cdr (x) (concat "(" (ls-compile x env fenv) ").cdr")) - - (define-compilation symbol-name (x) (concat "(" (ls-compile x env fenv) ").name")) @@ -397,6 +395,16 @@ (define-compilation code-char (x) (concat "String.fromCharCode( " (ls-compile x env fenv) ")")) +(define-compilation funcall (func &rest args) + (concat "(" + (ls-compile func env fenv) + ")(" + (join (mapcar (lambda (x) + (ls-compile x env fenv)) + args) + ", ") + ")")) + (defun %compile-defvar (name) (push (make-var-binding name) *env*) (push (concat "var " (lookup-variable name *env*)) *toplevel-compilations*))