diff options
| author | Joel Martin <github@martintribe.org> | 2014-04-02 22:23:37 -0500 |
|---|---|---|
| committer | Joel Martin <github@martintribe.org> | 2014-04-02 22:23:37 -0500 |
| commit | ea81a8087bcd7953b083a2be9db447f75e7ebf56 (patch) | |
| tree | 6cf47a2dbd55d42efc4a901eaabdec952f40ce89 /ps/step9_interop.ps | |
| parent | 1617910ad342a55762f3ddabb975849d843cff85 (diff) | |
| download | mal-ea81a8087bcd7953b083a2be9db447f75e7ebf56.tar.gz mal-ea81a8087bcd7953b083a2be9db447f75e7ebf56.zip | |
All: split types into types, env, printer, core.
- types: low-level mapping to the implementation language.
- core: functions on types that are exposed directly to mal.
- printer: implementation called by pr-str, str, prn, println.
- env: the environment implementation
- Also, unindent all TCO while loops so that the diff of step4 and
step5 are minimized.
Diffstat (limited to 'ps/step9_interop.ps')
| -rw-r--r-- | ps/step9_interop.ps | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ps/step9_interop.ps b/ps/step9_interop.ps index 743422b..f8d3250 100644 --- a/ps/step9_interop.ps +++ b/ps/step9_interop.ps @@ -1,5 +1,8 @@ (types.ps) run (reader.ps) run +(printer.ps) run +(env.ps) run +(core.ps) run % read /_readline { print flush (%stdin) (r) file 99 string readline } def @@ -212,7 +215,7 @@ end } def /REP { READ repl_env EVAL PRINT } def /_ref { repl_env 3 1 roll env_set pop } def -types_ns { _ref } forall +core_ns { _ref } forall (read-string) { 0 get read_str } _ref (eval) { 0 get repl_env EVAL } _ref |
