File tree Expand file tree Collapse file tree 3 files changed +18
-7
lines changed Expand file tree Collapse file tree 3 files changed +18
-7
lines changed Original file line number Diff line number Diff line change 1
1
[package ]
2
2
name = " lambda_mountain"
3
- version = " 1.11.76 "
3
+ version = " 1.11.77 "
4
4
authors = [" Andrew <andrew@subarctic.org>" ]
5
5
license = " MIT"
6
6
description = " Lambda Mountain"
Original file line number Diff line number Diff line change @@ -4,13 +4,13 @@ macro ( ('let x y) )
4
4
5
5
macro ('match t ps) (tail(
6
6
(let (uuid term) t)
7
- # (let (uuid matched) ())
8
-
9
- # (let (uuid return) ())
10
- (print (uuid term))
11
- # (match-pats( (uuid term) (uuid matched) (uuid return) ps ))
12
- # (uuid return)
7
+ (match-pats( (uuid term) ps (fail PatternMatchFailure_s) ))
13
8
));
9
+
10
+ macro ('match-pats( term ps remainder )) (
11
+ remainder
12
+ );
13
+
14
14
#macro ('match-pats( term matched return () )) ();
15
15
#macro ('match-pats( term matched return (ps (lhs rhs)) )) (
16
16
# (match-pats( term matched return ps ))
Original file line number Diff line number Diff line change @@ -37,6 +37,17 @@ print := λ(: x S). (: (tail(
37
37
()
38
38
)) Nil);
39
39
40
+ fail := λ(: msg Array<U8,?>). (: (tail(
41
+ (print msg)
42
+ (exit 1u64)
43
+ )) Nil);
44
+
45
+ exit := λ(: code U64). (: (tail(
46
+ (mov( 60u64 RAX ))
47
+ (mov( code RDI ))
48
+ (syscall())
49
+ )) Nil);
50
+
40
51
print := λ(: x Array<U8,?>). (: (tail(
41
52
(mov( x R15 ))
42
53
(mov( 0u64 RDX )) # data length
You can’t perform that action at this time.
0 commit comments