Last active 1 month ago

capitalex's Avatar capitalex revised this gist 1 month ago. Go to revision

1 file changed, 69 insertions

ewe.wul(file created)

@@ -0,0 +1,69 @@
1 + @ewe @ewe.dup ; @ewe.stack $ {
2 + @ewe.stack ( $ $ )
3 + }
4 +
5 + @ewe @ewe.swap ; @ewe.stack ( $x $y ) {
6 + @ewe.stack ( $y $x )
7 + }
8 +
9 + @ewe @ewe.drop ; @ewe.stack ( $x ) { }
10 +
11 + @ewe @ewe.nip ; @ewe.stack ( $ $x ) {
12 + @ewe.stack $x
13 + }
14 +
15 + @ewe @ewe.call ; @ewe.stack $fn {
16 + @ewe def $fn ;
17 + }
18 +
19 + @ewe @ewe.if ; @ewe.stack ( $true $ true ) {
20 + @ewe def $true
21 + }
22 +
23 + @ewe @ewe.if ; @ewe.stack ( $ $false false ) {
24 + @ewe def $false
25 + }
26 +
27 + @ewe @ewe.lt ; @ewe.stack ~( $x $y ) {
28 + @ewe.stack $z ; @code [$z = tostring(tonumber($x) < tonumber($y))]
29 + }
30 +
31 + @ewe @ewe.eq ; @ewe.stack ~( $x $y ) {
32 + @ewe.stack $z ; @code [$z = tostring(tonumber($x) == tonumber($y))]
33 + }
34 +
35 + @ewe @ewe.gt ; @ewe.stack ~( $x $y ) {
36 + @ewe.stack $z ; @code [$z = tostring(tonumber($x) > tonumber($y))]
37 + }
38 +
39 + @ewe @ewe.and ; @ewe.stack ( true ture ) { @ewe.stack true }
40 + @ewe @ewe.and ; @ewe.stack ( $1 $2 ) { @ewe.stack false }
41 +
42 + @ewe @ewe.or ; @ewe.stack ( true $ ) { @ewe.stack true }
43 + @ewe @ewe.or ; @ewe.stack ( $ true ) { @ewe.stack true }
44 + @ewe @ewe.or ; @ewe.stack ( $ $ ) { @ewe.stack false }
45 +
46 + @ewe @ewe.not ; @ewe.stack true { @ewe.stack false }
47 + @ewe @ewe.not ; @ewe.stack false { @ewe.stack true }
48 +
49 + @ewe @ewe.sub ; @ewe.stack ~( $x $y ) {
50 + @ewe.stack $z ; @code [$z = tostring($x - $y)]
51 + }
52 +
53 + @ewe @ewe.add ; @ewe.stack ~( $x $y ) {
54 + @ewe.stack $z ; @code [$z = tostring($x + $y)]
55 + }
56 +
57 + @ewe @ewe.div ; @ewe.stack ~( $x $y ) {
58 + @ewe.stack $z ; @code [$z = tostring($x / $y)]
59 + }
60 +
61 + @ewe @ewe.mod ; @ewe.stack ~( $x $y ) {
62 + @ewe.stack $z ; @code [$z = tostring($x % $y)]
63 + }
64 +
65 + @ewe @ewe.mul ; @ewe.stack ~( $x $y ) {
66 + @ewe.stack $z ; @code [$z = tostring($x * $y)]
67 + }
68 +
69 + @ewe ( $x ) { @ewe.stack $x }
Newer Older