about summary refs log tree commit diff stats
path: root/shen/basic.shen
diff options
context:
space:
mode:
authorDarren Bane <darren.bane@emdalo.com>2021-11-02 13:28:51 +0000
committerDarren Bane <darren.bane@emdalo.com>2021-11-02 13:28:51 +0000
commitccb2aac02c83a057f9a22d59e6fbaecf25709073 (patch)
tree5fbbcf557e000dd16d5bb352def9b4a3debff730 /shen/basic.shen
parent5270dbf2e0325ca8e5d829dd4f40ef3baf2b41ea (diff)
parent67ef9fbf276a3f1490910abfcb2f8387f0944a95 (diff)
downloadlsp-ccb2aac02c83a057f9a22d59e6fbaecf25709073.tar.gz
Merge branch 'master' of tilde.institute:public_repos/lsp
Diffstat (limited to 'shen/basic.shen')
-rw-r--r--shen/basic.shen18
1 files changed, 18 insertions, 0 deletions
diff --git a/shen/basic.shen b/shen/basic.shen
new file mode 100644
index 0000000..89a998e
--- /dev/null
+++ b/shen/basic.shen
@@ -0,0 +1,18 @@
+(define priority-op
+  { symbol --> number }
+  not -> 1
+  uminus -> 7)
+
+(define pp-binop
+  { symbol --> string }
+  plus -> "+"
+  mult -> "*")
+
+(define parenthesis
+  { string --> string }
+  X -> (@s "(" X ")"))
+
+(define isdigit
+  { string --> boolean }
+  C -> (let CN (string->n C)
+         (and (>= CN (string->n "0")) (<= CN (string->n "9")))))