aboutsummaryrefslogtreecommitdiff
path: root/docs/step_notes.txt
diff options
context:
space:
mode:
authorJoel Martin <github@martintribe.org>2014-10-06 22:27:28 -0500
committerJoel Martin <github@martintribe.org>2014-10-06 22:27:28 -0500
commitad95503cea8ca85e9188effa87681275283157bf (patch)
treef4e5919aeb2351f2ceb60fee4ab988324bfb5dd1 /docs/step_notes.txt
parent17e1c5f9f4006399398e8bb7e219a79962ebf3f0 (diff)
downloadmal-ad95503cea8ca85e9188effa87681275283157bf.tar.gz
mal-ad95503cea8ca85e9188effa87681275283157bf.zip
go: add step6_file
Diffstat (limited to 'docs/step_notes.txt')
-rw-r--r--docs/step_notes.txt22
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/step_notes.txt b/docs/step_notes.txt
index 5d29888..af137d9 100644
--- a/docs/step_notes.txt
+++ b/docs/step_notes.txt
@@ -257,6 +257,11 @@ Step Notes:
- in let*, do, and if:
- set ast and env and loop (no return)
- in fn* create Mal function type
+ - if compiled, update Makefile
+ - in apply, test if Mal function type:
+ - if so, generate new env from stored env, args and callee
+ params
+ - set ast to stored ast
- step6_file
@@ -266,6 +271,23 @@ Step Notes:
- set *ARGV*
- if files on command line, use load-file to run first argument
using rest as arguments
+ - Details:
+ - cp step5_tco.EXT to step6_file.EXT
+ - if compiled update Makefile
+ - add eval to repl_env
+ - add empty *ARGV* list to repl_env
+ - in core.ns:
+ - implement slurp
+ - wrap printer.read-str as read-string
+ - implement load-file using rep
+ - test:
+ (load-file "../tests/inc.mal")
+ (inc3 10)
+ - implement command line execution
+ - test:
+ ./step6_file ../tests/incA.mal
+ =>9
+ - implement comments in reader.EXT (ignore in tokenize)
- step7_quote
- add is_pair and quasiquote functions