diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-04-17 23:57:53 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-04-17 23:59:30 -0700 |
commit | e5adb2239c632490f4f00f899977cc7947035d0f (patch) | |
tree | 7316b13c56cbdb686706c7601c190b7944f95bb8 /shell/global.mu | |
parent | 97df52bf2fadf41fe73745c99730e0838881b0df (diff) | |
download | mu-e5adb2239c632490f4f00f899977cc7947035d0f.tar.gz |
.
Diffstat (limited to 'shell/global.mu')
-rw-r--r-- | shell/global.mu | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/shell/global.mu b/shell/global.mu index c3df463e..9bc2aff4 100644 --- a/shell/global.mu +++ b/shell/global.mu @@ -48,7 +48,9 @@ fn initialize-globals _self: (addr global-table) { # for streams append-primitive self, "stream" append-primitive self, "write" + # misc append-primitive self, "abort" + append-primitive self, "life" # keep sync'd with render-primitives } @@ -595,6 +597,13 @@ fn apply-primitive _f: (addr cell), args-ah: (addr handle cell), out: (addr hand apply-abort args-ah, out, trace return } + { + var life?/eax: boolean <- string-equal? f-name, "life" + compare life?, 0/false + break-if-= + apply-life args-ah, out, trace + return + } abort "unknown primitive function" } @@ -1636,6 +1645,10 @@ fn apply-abort _args-ah: (addr handle cell), out: (addr handle cell), trace: (ad abort "aa" } +fn apply-life _args-ah: (addr handle cell), out: (addr handle cell), trace: (addr trace) { + life +} + fn apply-columns _args-ah: (addr handle cell), out: (addr handle cell), trace: (addr trace) { trace-text trace, "eval", "apply columns" var args-ah/eax: (addr handle cell) <- copy _args-ah |