summaryrefslogtreecommitdiff
path: root/src/kompsos-prelude.ads
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2025-11-11 06:55:37 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2025-11-11 06:55:37 +1300
commitaf9ee420c398bac0eff6d9dfb1919851261b8318 (patch)
treed40284e00abf26a63f601f22cb9a996b6474b1f9 /src/kompsos-prelude.ads
parent7719622ff4f72769f15a771dc5455dabeff295bc (diff)
Non-recursive, non-numeric portions of prelude
Diffstat (limited to 'src/kompsos-prelude.ads')
-rw-r--r--src/kompsos-prelude.ads83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/kompsos-prelude.ads b/src/kompsos-prelude.ads
new file mode 100644
index 0000000..5dbc562
--- /dev/null
+++ b/src/kompsos-prelude.ads
@@ -0,0 +1,83 @@
+
+
+-- Programmed by Jedidiah Barber
+-- Licensed under the Sunset License v1.0
+
+-- See license.txt for further details
+
+
+generic
+package Kompsos.Prelude is
+
+
+ -- caro --
+
+ function Head
+ (This : in World;
+ Full_List, Head_Term : in Term'Class)
+ return World;
+
+ procedure Head
+ (This : in out World;
+ Full_List, Head_Term : in Term'Class);
+
+
+ -- cdro --
+
+ function Tail
+ (This : in World;
+ Full_List, Tail_Term : in Term'Class)
+ return World;
+
+ procedure Tail
+ (This : in out World;
+ Full_List, Tail_Term : in Term'Class);
+
+
+ -- conso --
+
+ function Cons
+ (This : in World;
+ Head_Term, Tail_Term, Full_List : in Term'Class)
+ return World;
+
+ procedure Cons
+ (This : in out World;
+ Head_Term, Tail_Term, Full_List : in Term'Class);
+
+
+ -- nullo --
+
+ function Nil
+ (This : in World;
+ Nil_Term : in Term'Class)
+ return World;
+
+ procedure Nil
+ (This : in out World;
+ Nil_Term : in Term'Class);
+
+
+ -- eqo --
+ -- Skipped due to being a synonym for Unify
+
+
+ -- eq-caro --
+ -- Skipped due to being a synonym for Head
+
+
+ -- pairo --
+
+ function Pair
+ (This : in World;
+ Pair_Term : in Term'Class)
+ return World;
+
+ procedure Pair
+ (This : in out World;
+ Pair_Term : in Term'Class);
+
+
+end Kompsos.Prelude;
+
+