about summary refs log tree commit diff stats
path: root/baremetal/shell/sandbox.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-02-21 22:06:03 -0800
committerKartik K. Agaram <vc@akkartik.com>2021-02-21 22:08:13 -0800
commit210c48370a9cfda64e421440df4bb378b0167d0b (patch)
tree18d84e300ca78107243cf3237735dbf0bf7895ea /baremetal/shell/sandbox.mu
parent19f93c7457529a4dc04638eef5de878475067aa8 (diff)
downloadmu-210c48370a9cfda64e421440df4bb378b0167d0b.tar.gz
7777
Same identity REPL, but now going through some symbol processing.
Diffstat (limited to 'baremetal/shell/sandbox.mu')
-rw-r--r--baremetal/shell/sandbox.mu20
1 files changed, 5 insertions, 15 deletions
diff --git a/baremetal/shell/sandbox.mu b/baremetal/shell/sandbox.mu
index cdce1512..c89814d4 100644
--- a/baremetal/shell/sandbox.mu
+++ b/baremetal/shell/sandbox.mu
@@ -102,19 +102,9 @@ fn edit-sandbox _self: (addr sandbox), key: byte {
 }
 
 fn run in: (addr gap-buffer), out: (addr stream byte) {
-  # tokenize
-  # insert parens
-  # transform infix
-  # token tree
-  # syntax tree
-  rewind-gap-buffer in
-  clear-stream out
-  {
-    var done?/eax: boolean <- gap-buffer-scan-done? in
-    compare done?, 0/false
-    break-if-!=
-    var g/eax: grapheme <- read-from-gap-buffer in
-    write-grapheme out, g
-    loop
-  }
+  var read-result-storage: (handle cell)
+  var read-result/esi: (addr handle cell) <- address read-result-storage
+  read-cell in, read-result
+  # TODO: eval
+  print-cell read-result, out
 }