diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2014-08-28 19:54:37 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2014-08-28 19:54:37 -0700 |
commit | a1ef15119620a5f76071a1f3a829424a62864265 (patch) | |
tree | becfef19c30ae48f083624371605a15c844841bd /mu.arc | |
parent | 2f2c2418002c142c259d20ff335edbfd0c8f7114 (diff) | |
download | mu-a1ef15119620a5f76071a1f3a829424a62864265.tar.gz |
87
Diffstat (limited to 'mu.arc')
-rw-r--r-- | mu.arc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/mu.arc b/mu.arc index 50f9233f..3769b803 100644 --- a/mu.arc +++ b/mu.arc @@ -118,6 +118,10 @@ ; context contains the call-stack of functions that haven't yet returned +(def make-context (fn-name) + (annotate 'context (obj call-stack (list + (obj fn-name fn-name pc 0 caller-arg-idx 0))))) + (defextend empty (x) (isa x 'context) (no rep.x!call-stack)) @@ -162,8 +166,7 @@ (def run (fn-name) (ret result 0 - (let context (annotate 'context (obj call-stack (list - (obj fn-name fn-name pc 0 caller-arg-idx 0)))) + (let context (make-context fn-name) (while (~empty context) ;? (prn "== " context) (let insts-run (run-for-time-slice context scheduling-interval*) |