Compile clisp files before running
authorIqbal Ansari <iqbalansari02@yahoo.com>
Sun, 28 Aug 2016 16:40:14 +0000 (22:10 +0530)
committerIqbal Ansari <iqbalansari02@yahoo.com>
Sun, 28 Aug 2016 16:56:35 +0000 (22:26 +0530)
This step gives really good speedups, there still seem to be some
bottlenecks around evaluation which need attention

.gitignore
Makefile
clisp/Makefile
clisp/run

index aab935d..3571dcf 100644 (file)
@@ -104,3 +104,5 @@ tcl/mal.tcl
 vb/*.exe
 vb/*.dll
 vimscript/mal.vim
+clisp/*.fas
+clisp/*.lib
index f1f54fd..f1727fb 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -151,7 +151,7 @@ d_STEP_TO_PROG =       d/$($(1))
 chuck_STEP_TO_PROG =   chuck/$($(1)).ck
 clojure_STEP_TO_PROG = clojure/target/$($(1)).jar
 coffee_STEP_TO_PROG =  coffee/$($(1)).coffee
-clisp_STEP_TO_PROG = clisp/$($(1)).lisp
+clisp_STEP_TO_PROG = clisp/$($(1)).fas
 cpp_STEP_TO_PROG =     cpp/$($(1))
 crystal_STEP_TO_PROG = crystal/$($(1))
 cs_STEP_TO_PROG =      cs/$($(1)).exe
index 1026839..18c5980 100644 (file)
@@ -7,6 +7,9 @@ all:
 
 .PHONY: stats
 
+step%.fas : step%.lisp dependencies.lisp utils.lisp types.lisp env.lisp printer.lisp reader.lisp
+       clisp -q -c $<
+
 stats: $(SOURCES)
        @wc $^
        @printf "%5s %5s %5s %s\n" `grep -E "^[[:space:]]*;|^[[:space:]]*$$" $^ | wc` "[comments/blanks]"
index 7950b67..9522020 100755 (executable)
--- a/clisp/run
+++ b/clisp/run
@@ -1,2 +1,2 @@
 #!/bin/bash
-exec clisp $(dirname $0)/${STEP:-stepA_mal}.lisp "${@}"
+exec clisp $(dirname $0)/${STEP:-stepA_mal}.fas "${@}"