about summary refs log tree commit diff stats
path: root/modal/tests/cases
diff options
context:
space:
mode:
Diffstat (limited to 'modal/tests/cases')
-rw-r--r--modal/tests/cases/01_eq.modal5
-rw-r--r--modal/tests/cases/02_copy_swap.modal4
-rw-r--r--modal/tests/cases/03_and_or_not.modal7
-rw-r--r--modal/tests/cases/04_ife.modal4
-rw-r--r--modal/tests/cases/05_numbers_sub.modal4
-rw-r--r--modal/tests/cases/06_lists_reverse.modal6
-rw-r--r--modal/tests/cases/07_dynamic_define.modal4
7 files changed, 34 insertions, 0 deletions
diff --git a/modal/tests/cases/01_eq.modal b/modal/tests/cases/01_eq.modal
new file mode 100644
index 0000000..bdc5c09
--- /dev/null
+++ b/modal/tests/cases/01_eq.modal
@@ -0,0 +1,5 @@
+<> (eq ?x ?x) (#t)
+<> (eq ?x ?y) (#f)
+
+.. (eq fox bat)
+.. (eq bat bat)
diff --git a/modal/tests/cases/02_copy_swap.modal b/modal/tests/cases/02_copy_swap.modal
new file mode 100644
index 0000000..5d51f9b
--- /dev/null
+++ b/modal/tests/cases/02_copy_swap.modal
@@ -0,0 +1,4 @@
+<> (copy ?a) (?a ?a)
+<> (swap ?x ?y) (?y ?x)
+
+(copy cat) (swap bat rat)
diff --git a/modal/tests/cases/03_and_or_not.modal b/modal/tests/cases/03_and_or_not.modal
new file mode 100644
index 0000000..1bafb64
--- /dev/null
+++ b/modal/tests/cases/03_and_or_not.modal
@@ -0,0 +1,7 @@
+<> (and #t #t) #t <> (or #t #t) #t 
+<> (and #t #f) #f <> (or #t #f) #t
+<> (and #f #t) #f <> (or #f #t) #t 
+<> (and #f #f) #f <> (or #f #f) #f
+<> (not #t) #f    <> (not #f) #t
+
+(not (and #t #f))
diff --git a/modal/tests/cases/04_ife.modal b/modal/tests/cases/04_ife.modal
new file mode 100644
index 0000000..1718fdc
--- /dev/null
+++ b/modal/tests/cases/04_ife.modal
@@ -0,0 +1,4 @@
+<> (ife #t ?t ?f) ?t
+<> (ife #f ?t ?f) ?f
+
+(ife #t yes no)
diff --git a/modal/tests/cases/05_numbers_sub.modal b/modal/tests/cases/05_numbers_sub.modal
new file mode 100644
index 0000000..de8db98
--- /dev/null
+++ b/modal/tests/cases/05_numbers_sub.modal
@@ -0,0 +1,4 @@
+<> ((?a) - (?b)) (?a - ?b)
+<> (?a - 0) (difference ?a)
+
+(5 - 2)
diff --git a/modal/tests/cases/06_lists_reverse.modal b/modal/tests/cases/06_lists_reverse.modal
new file mode 100644
index 0000000..3eb0c94
--- /dev/null
+++ b/modal/tests/cases/06_lists_reverse.modal
@@ -0,0 +1,6 @@
+<> (reverse List (?x ?y) ?z) (reverse List ?y (?x ?z))
+<> (reverse List ?empty ?list) (print List ?list)
+<> (print List (?: ?x)) (print List ?x)
+<> (print List ()) ()
+
+(reverse List (m (o (d (a (l ()))))) ())
diff --git a/modal/tests/cases/07_dynamic_define.modal b/modal/tests/cases/07_dynamic_define.modal
new file mode 100644
index 0000000..e9a3a71
--- /dev/null
+++ b/modal/tests/cases/07_dynamic_define.modal
@@ -0,0 +1,4 @@
+(<>) (copy ?a) (?a ?a)
+(copy x)
+(><) (copy ?a) (?a ?a)
+(copy y)