1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
NamespaceDeclaration {
kind: Standalone,
path: std∷create∷test,
}
TryStatement {
handler: None,
body: [],
span: 28..36,
}
TryStatement {
handler: Some(
UnaryNode {
prefix: ℃,
base: String,
},
),
body: [],
span: 38..54,
}
TryStatement {
handler: Some(
GenericCallNode {
monadic: false,
base: Option,
term: [
ArgumentTerm {
key: Nothing,
value: T,
},
],
span: 66..69,
},
),
body: [],
span: 56..74,
}
MatchCallNode {
monadic: true,
base: MatchCallNode {
monadic: false,
base: TryStatement {
handler: Some(
GenericCallNode {
monadic: false,
base: Result,
term: [
ArgumentTerm {
key: Nothing,
value: T,
},
ArgumentTerm {
key: Nothing,
value: Noop,
},
],
span: 86..95,
},
),
body: [
ApplyCallNode {
monadic: false,
caller: print,
arguments: [
ArgumentTerm {
key: Nothing,
value: 'try',
},
],
body: None,
span: 107..114,
},
],
span: 76..117,
},
kind: Effect,
patterns: [
PatternBranch {
condition: PatternTypeNode {
typing: RuntimeError,
guard: None,
span: 131..180,
},
continuation: [
ApplyCallNode {
monadic: false,
caller: print,
arguments: [
ArgumentTerm {
key: Nothing,
value: 'RuntimeError',
},
],
body: None,
span: 163..179,
},
],
span: 131..180,
},
],
span: 118..181,
},
kind: Typing,
patterns: [
PatternBranch {
condition: PatternCaseNode {
pattern: TuplePatternNode {
bind: None,
name: None,
terms: [
IdentifierPattern {
modifiers: [],
identifier: Identifier("_", 206..207),
},
],
span: 0..0,
},
guard: None,
span: 196..231,
},
continuation: [
ApplyCallNode {
monadic: false,
caller: print,
arguments: [
ArgumentTerm {
key: Nothing,
value: 'Some',
},
],
body: None,
span: 223..231,
},
],
span: 196..231,
},
],
span: 181..234,
}