X-Git-Url: http://repo.macrolet.net/gitweb/?p=jscl.git;a=blobdiff_plain;f=jscl.lisp;h=19c5c54b9eb9c6d0321320f60ecefc8e4c971fbf;hp=7c268415425cfc72493f236e9db373de9f8eb451;hb=HEAD;hpb=29c5587e4ad81dd1442c5f54cc686a45f7cb9d2e diff --git a/jscl.lisp b/jscl.lisp index 7c26841..19c5c54 100644 --- a/jscl.lisp +++ b/jscl.lisp @@ -22,6 +22,8 @@ (in-package :jscl) +(defvar *version* "0.0.2") + (defvar *base-directory* (or #.*load-pathname* *default-pathname-defaults*)) @@ -41,6 +43,7 @@ (defvar *source* '(("boot" :target) ("compat" :host) + ("setf" :target) ("utils" :both) ("numbers" :target) ("char" :target) @@ -54,8 +57,8 @@ ("documentation" :target) ("misc" :target) ("ffi" :target) + ("symbol" :target) ("package" :target) - ("read" :both) ("defstruct" :both) ("lambda-list" :both) @@ -159,17 +162,22 @@ (setq *variable-counter* 0 *gensym-counter* 0 *literal-counter* 0) - (with-open-file (out (merge-pathnames "jscl.js" *base-directory*) :direction :output :if-exists :supersede) + (with-open-file (out (merge-pathnames "jscl.js" *base-directory*) + :direction :output + :if-exists :supersede) (write-string (read-whole-file (source-pathname "prelude.js")) out) (do-source input :target (!compile-file input out)) (dump-global-environment out)) ;; Tests - (with-open-file (out (merge-pathnames "tests.js" *base-directory*) :direction :output :if-exists :supersede) + (with-open-file (out (merge-pathnames "tests.js" *base-directory*) + :direction :output + :if-exists :supersede) (dolist (input (append (directory "tests.lisp") (directory "tests/*.lisp") (directory "tests-report.lisp"))) - (!compile-file input out))))) + (!compile-file input out))) + (report-undefined-functions))) ;;; Run the tests in the host Lisp implementation. It is a quick way