-SOURCES_BASE = Reader.elm Printer.elm Utils.elm Types.elm Env.elm \
- Core.elm Eval.elm IO.elm
-SOURCES_STEPS = step0_repl.elm step4_if_fn_do.elm step5_tco.elm step6_file.elm step1_read_print.elm step7_quote.elm
- #step2_eval.elm step3_env.elm \
- step8_macros.ls step9_try.ls stepA_mal.ls
-SOURCES_LISP = #env.ls core.ls stepA_mal.ls
-SOURCES = $(SOURCES_STEPS)
+SOURCES = step0_repl.elm step1_read_print.elm \
+ step4_if_fn_do.elm step5_tco.elm step6_file.elm step7_quote.elm \
+ step8_macros.elm step9_try.elm # stepA_mal.ls \
+ #step2_eval.elm step3_env.elm
BINS = $(SOURCES:%.elm=%.js)
%.js: %.elm node_modules
$(ELM) make $(@:%.js=%.elm) --output $@
-step1_read_print.js: Reader.elm Printer.elm Utils.elm Types.elm
+STEP0_SOURCES = IO.elm
+STEP1_SOURCES = $(STEP0_SOURCES) Reader.elm Printer.elm Utils.elm Types.elm Env.elm
+STEP2_SOURCES = $(STEP1_SOURCES)
+STEP3_SOURCES = $(STEP2_SOURCES)
+STEP4_SOURCES = $(STEP3_SOURCES) Core.elm Eval.elm
+
+step1_read_print.js: $(STEP1_SOURCES)
#step2_eval.js: Reader.elm Printer.elm Utils.elm Types.elm
#step3_env.js: Reader.elm Printer.elm Utils.elm Types.elm Env.elm
-step4_if_fn_do.js: $(SOURCES_BASE)
-step5_tco.js: $(SOURCES_BASE)
-step6_file.js: $(SOURCES_BASE)
-step7_quote.js: $(SOURCES_BASE)
-# step8_macros.js: utils.js reader.js printer.js env.js core.js
-# step9_try.js: utils.js reader.js printer.js env.js core.js
+step4_if_fn_do.js: $(STEP4_SOURCES)
+step5_tco.js: $(STEP4_SOURCES)
+step6_file.js: $(STEP4_SOURCES)
+step7_quote.js: $(STEP4_SOURCES)
+step8_macros.js: $(STEP4_SOURCES)
+step9_try.js: $(STEP4_SOURCES)
# stepA_mal.js: utils.js reader.js printer.js env.js core.js
clean: