aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorGravatar Moon Flower <moon@coffin.ir> 2025-02-27 14:49:26 +0330
committerGravatar Moon Flower <moon@coffin.ir> 2025-02-27 14:49:26 +0330
commit98b554584d06d85f20e10905efb96e4dd5f7c820 (patch)
tree0dc9ca8737c4caddbd4163d83f179913fc9629b7 /README.md
parentmain.m4 -> moonshine.m4 (diff)
Slight revamp + Algebraic data types
Diffstat (limited to 'README.md')
-rw-r--r--README.md3
1 files changed, 2 insertions, 1 deletions
diff --git a/README.md b/README.md
index c2378b9..1bf9c8d 100644
--- a/README.md
+++ b/README.md
@@ -20,9 +20,10 @@ Its current features are:
- Revamped stdlib functions such as `char* strdup(const char* str) -> t(char) strdup(ctring str)`
- Array manipulation using `reverse_array(array)` which returns the reversed array and also reverses it in-place.
- Custom `_start` function that initializes moonshine functionality whilst still keeping the ease of use of the libc `main` function.
+- Algebraic data types using the `datatype` macro, eg. `datatype(binarytree, ((leaf, int), (node, binarytree *, int, binarytree *) ));`
+- Pattern matching using algebraic data types.
The roadmap for moonshine is:
-- Adding Algebraic data types
- Implementing Garbage collection
- Achieving more libc compatibility
- Moving common operations to macros for reduced code size and increased conciseness