summaryrefslogtreecommitdiff
path: root/test/std.kurt
diff options
context:
space:
mode:
authormRnea <akannemre@gmail.com>2024-08-18 17:10:32 +0300
committermRnea <akannemre@gmail.com>2024-08-18 17:10:32 +0300
commit86dbe8eb0abe2a2d5f0f687ff190c4e9f547d126 (patch)
tree734e1ef7a4a2fe480a6c6b19e8b75b6f25e8fe1c /test/std.kurt
parent30e2c565fbe48747760b3d32515b756b5bb2a2d7 (diff)
added a few operations and expanded standard library
Diffstat (limited to 'test/std.kurt')
-rw-r--r--test/std.kurt33
1 files changed, 31 insertions, 2 deletions
diff --git a/test/std.kurt b/test/std.kurt
index cf7e684..97fc60b 100644
--- a/test/std.kurt
+++ b/test/std.kurt
@@ -1,4 +1,33 @@
-makro sys-write 1 son
+;; Currently makro stack notation is ignored by the compiler.
+makro sys-write 1 son
makro write (fd string -- )
değiş sys-write syscall-3 son
-makro stdout 1 son \ No newline at end of file
+makro stdout 1 son
+
+makro / (a b -- (a / b)) divmod düş son
+makro % (a b -- (a % b)) divmod değiş düş son
+makro 2eş (a b -- a b a b) üst üst son
+
+makro load64 (bel -- a)
+ 7 + 0
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş 1 - değiş
+ 8 << üst oku + değiş düş
+son
+
+makro byte-max 255 son ;; 2^8 - 1 = 255
+makro store64 (bel a -- )
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> değiş 1 + değiş
+ 2eş byte-max & yaz 8 >> düş düş
+son \ No newline at end of file