pet 20 mar 2026 16:41:54 CET e
test10.p26
typ T = int
typ idtyp = T
var idvar : T
fun idfun1 (par1 : { a: {a: T}, b: (:{a: ( g : int)}:bool)}) : {a: int}
fun idfun2 () : void = not true, +100, -100, 1+2, 1-3, 1*3, 4*22, 5/2, 35%23, true and false, false or true, let var assignme : int var a : bool var b : bool in assignme = 1, a == b end, 234 >= 123, 23<235, 34>2 , 3<5, 2<=2
| A97: Nodes<Defn> |
| 1:1-9:224 |
|
|
| A0: AtomType INT |
| 1:9-1:11 |
|
|
|
| A3: TypDefn idtyp |
| 3:1-3:13 |
|
| A2: NameType T |
| 3:13-3:13 |
| defAt: A1 @ 1:1-1:11 |
|
|
|
| A5: VarDefn idvar |
| 5:1-5:13 |
|
| A4: NameType T |
| 5:13-5:13 |
| defAt: A1 @ 1:1-1:11 |
|
|
|
| A30: ExtFunDefn idfun1 |
| 7:1-7:71 |
|
| A29: Nodes<ParDefn> |
| 7:12-7:60 |
|
| A24: ParDefn par1 |
| 7:13-7:59 |
|
|
| A22: Nodes<CompDefn> |
| 7:22-7:58 |
|
| A10: CompDefn a |
| 7:22-7:30 |
|
|
| A8: Nodes<CompDefn> |
| 7:26-7:29 |
|
|
| A6: NameType T |
| 7:29-7:29 |
| defAt: A1 @ 1:1-1:11 |
|
|
|
|
|
|
| A21: CompDefn b |
| 7:33-7:58 |
|
|
| A19: Nodes<Type> |
| 7:37-7:53 |
|
|
| A16: Nodes<CompDefn> |
| 7:39-7:51 |
|
| A15: CompDefn a |
| 7:39-7:51 |
|
|
| A13: Nodes<CompDefn> |
| 7:44-7:50 |
|
| A12: CompDefn g |
| 7:44-7:50 |
|
| A11: AtomType INT |
| 7:48-7:50 |
|
|
|
|
|
|
|
|
|
| A18: AtomType BOOL |
| 7:54-7:57 |
|
|
|
|
|
|
|
|
|
| A27: Nodes<CompDefn> |
| 7:65-7:70 |
|
| A26: CompDefn a |
| 7:65-7:70 |
|
| A25: AtomType INT |
| 7:68-7:70 |
|
|
|
|
|
|
| A96: DefFunDefn idfun2 |
| 9:1-9:224 |
|
|
| A31: AtomType VOID |
| 9:17-9:20 |
|
|
|
| A94: Nodes<Expr> |
| 9:24-9:224 |
|
| A33: PfxExpr NOT |
| 9:24-9:31 |
|
| A32: AtomExpr true |
| 9:28-9:31 |
|
|
|
| A35: PfxExpr ADD |
| 9:34-9:37 |
|
| A34: AtomExpr 100 |
| 9:35-9:37 |
|
|
|
| A37: PfxExpr SUB |
| 9:40-9:43 |
|
| A36: AtomExpr 100 |
| 9:41-9:43 |
|
|
|
| A40: BinExpr ADD |
| 9:46-9:48 |
|
| A38: AtomExpr 1 |
| 9:46-9:46 |
|
|
| A39: AtomExpr 2 |
| 9:48-9:48 |
|
|
|
| A43: BinExpr SUB |
| 9:51-9:53 |
|
| A41: AtomExpr 1 |
| 9:51-9:51 |
|
|
| A42: AtomExpr 3 |
| 9:53-9:53 |
|
|
|
| A46: BinExpr MUL |
| 9:56-9:58 |
|
| A44: AtomExpr 1 |
| 9:56-9:56 |
|
|
| A45: AtomExpr 3 |
| 9:58-9:58 |
|
|
|
| A49: BinExpr MUL |
| 9:61-9:64 |
|
| A47: AtomExpr 4 |
| 9:61-9:61 |
|
|
| A48: AtomExpr 22 |
| 9:63-9:64 |
|
|
|
| A52: BinExpr DIV |
| 9:67-9:69 |
|
| A50: AtomExpr 5 |
| 9:67-9:67 |
|
|
| A51: AtomExpr 2 |
| 9:69-9:69 |
|
|
|
| A55: BinExpr MOD |
| 9:72-9:76 |
|
| A53: AtomExpr 35 |
| 9:72-9:73 |
|
|
| A54: AtomExpr 23 |
| 9:75-9:76 |
|
|
|
| A58: BinExpr AND |
| 9:79-9:92 |
|
| A56: AtomExpr true |
| 9:79-9:82 |
|
|
| A57: AtomExpr false |
| 9:88-9:92 |
|
|
|
| A61: BinExpr OR |
| 9:95-9:107 |
|
| A59: AtomExpr false |
| 9:95-9:99 |
|
|
| A60: AtomExpr true |
| 9:104-9:107 |
|
|
|
|
| A74: Nodes<Defn> |
| 9:114-9:157 |
|
| A63: VarDefn assignme |
| 9:114-9:131 |
|
| A62: AtomType INT |
| 9:129-9:131 |
|
|
|
| A65: VarDefn a |
| 9:133-9:144 |
|
| A64: AtomType BOOL |
| 9:141-9:144 |
|
|
|
| A67: VarDefn b |
| 9:146-9:157 |
|
| A66: AtomType BOOL |
| 9:154-9:157 |
|
|
|
|
|
| A75: Nodes<Expr> |
| 9:162-9:182 |
|
| A70: AsgnExpr |
| 9:162-9:173 |
|
| A68: NameExpr assignme |
| 9:162-9:169 |
| defAt: A63 @ 9:114-9:131 |
|
|
| A69: AtomExpr 1 |
| 9:173-9:173 |
|
|
|
| A73: BinExpr EQU |
| 9:177-9:182 |
|
| A71: NameExpr a |
| 9:177-9:177 |
| defAt: A65 @ 9:133-9:144 |
|
|
| A72: NameExpr b |
| 9:182-9:182 |
| defAt: A67 @ 9:146-9:157 |
|
|
|
|
|
|
| A80: BinExpr GEQ |
| 9:189-9:198 |
|
| A78: AtomExpr 234 |
| 9:189-9:191 |
|
|
| A79: AtomExpr 123 |
| 9:196-9:198 |
|
|
|
| A83: BinExpr LTH |
| 9:201-9:206 |
|
| A81: AtomExpr 23 |
| 9:201-9:202 |
|
|
| A82: AtomExpr 235 |
| 9:204-9:206 |
|
|
|
| A86: BinExpr GTH |
| 9:209-9:212 |
|
| A84: AtomExpr 34 |
| 9:209-9:210 |
|
|
| A85: AtomExpr 2 |
| 9:212-9:212 |
|
|
|
| A89: BinExpr LTH |
| 9:216-9:218 |
|
| A87: AtomExpr 3 |
| 9:216-9:216 |
|
|
| A88: AtomExpr 5 |
| 9:218-9:218 |
|
|
|
| A92: BinExpr LEQ |
| 9:221-9:224 |
|
| A90: AtomExpr 2 |
| 9:221-9:221 |
|
|
| A91: AtomExpr 2 |
| 9:224-9:224 |
|
|
|
|
|
|
|
test11.p26
fun funny(a : int, b : int) : void = ^a[b].c^ as { a: {a: int}, b: (:{a: ( g : int)}:bool)}, sizeof { a: {a: int}, b: (:{a: ( g : int)}:bool)}
typ t = (::t)
| A57: Nodes<Defn> |
| 1:1-4:13 |
|
| A52: DefFunDefn funny |
| 1:1-1:142 |
|
| A49: Nodes<ParDefn> |
| 1:10-1:27 |
|
|
| A0: AtomType INT |
| 1:15-1:17 |
|
|
|
|
| A2: AtomType INT |
| 1:24-1:26 |
|
|
|
|
| A4: AtomType VOID |
| 1:31-1:34 |
|
|
|
| A50: Nodes<Expr> |
| 1:38-1:142 |
|
|
| A10: PfxExpr PTR |
| 1:38-1:45 |
|
| A9: SfxExpr PTR |
| 1:39-1:45 |
|
|
|
| A5: NameExpr a |
| 1:39-1:39 |
| defAt: A1 @ 1:11-1:17 |
|
|
| A6: NameExpr b |
| 1:41-1:41 |
| defAt: A3 @ 1:20-1:26 |
|
|
|
|
|
|
|
| A27: Nodes<CompDefn> |
| 1:52-1:90 |
|
| A15: CompDefn a |
| 1:52-1:62 |
|
|
| A13: Nodes<CompDefn> |
| 1:56-1:61 |
|
| A12: CompDefn a |
| 1:56-1:61 |
|
| A11: AtomType INT |
| 1:59-1:61 |
|
|
|
|
|
|
| A26: CompDefn b |
| 1:65-1:90 |
|
|
| A24: Nodes<Type> |
| 1:69-1:85 |
|
|
| A21: Nodes<CompDefn> |
| 1:71-1:83 |
|
| A20: CompDefn a |
| 1:71-1:83 |
|
|
| A18: Nodes<CompDefn> |
| 1:76-1:82 |
|
| A17: CompDefn g |
| 1:76-1:82 |
|
| A16: AtomType INT |
| 1:80-1:82 |
|
|
|
|
|
|
|
|
|
| A23: AtomType BOOL |
| 1:86-1:89 |
|
|
|
|
|
|
|
|
|
| A46: Nodes<CompDefn> |
| 1:103-1:141 |
|
| A34: CompDefn a |
| 1:103-1:113 |
|
|
| A32: Nodes<CompDefn> |
| 1:107-1:112 |
|
| A31: CompDefn a |
| 1:107-1:112 |
|
| A30: AtomType INT |
| 1:110-1:112 |
|
|
|
|
|
|
| A45: CompDefn b |
| 1:116-1:141 |
|
|
| A43: Nodes<Type> |
| 1:120-1:136 |
|
|
| A40: Nodes<CompDefn> |
| 1:122-1:134 |
|
| A39: CompDefn a |
| 1:122-1:134 |
|
|
| A37: Nodes<CompDefn> |
| 1:127-1:133 |
|
| A36: CompDefn g |
| 1:127-1:133 |
|
| A35: AtomType INT |
| 1:131-1:133 |
|
|
|
|
|
|
|
|
|
| A42: AtomType BOOL |
| 1:137-1:140 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| A53: NameType t |
| 4:12-4:12 |
| defAt: A56 @ 4:1-4:13 |
|
|
|
|
|
test12.p26
fun f() : void = let fun f(a : int, b : int, c : int):void in let fun f():void in (a, b, c) end, let fun f():int = 5+5 in sizeof [10]int end end
| A45: Nodes<Defn> |
| 1:1-1:144 |
|
| A44: DefFunDefn f |
| 1:1-1:144 |
|
|
| A0: AtomType VOID |
| 1:11-1:14 |
|
|
|
| A42: Nodes<Expr> |
| 1:18-1:144 |
|
|
| A37: Nodes<Defn> |
| 1:22-1:58 |
|
| A9: ExtFunDefn f |
| 1:22-1:58 |
|
| A8: Nodes<ParDefn> |
| 1:27-1:53 |
|
|
| A1: AtomType INT |
| 1:32-1:34 |
|
|
|
|
| A3: AtomType INT |
| 1:41-1:43 |
|
|
|
|
| A5: AtomType INT |
| 1:50-1:52 |
|
|
|
|
| A7: AtomType VOID |
| 1:55-1:58 |
|
|
|
|
|
| A38: Nodes<Expr> |
| 1:63-1:140 |
|
|
| A18: Nodes<Defn> |
| 1:67-1:78 |
|
| A12: ExtFunDefn f |
| 1:67-1:78 |
|
|
| A10: AtomType VOID |
| 1:75-1:78 |
|
|
|
|
|
| A19: Nodes<Expr> |
| 1:83-1:91 |
|
|
| A16: Nodes<Expr> |
| 1:83-1:91 |
|
| A13: NameExpr a |
| 1:84-1:84 |
| defAt: A2 @ 1:28-1:34 |
|
|
| A14: NameExpr b |
| 1:87-1:87 |
| defAt: A4 @ 1:37-1:43 |
|
|
| A15: NameExpr c |
| 1:90-1:90 |
| defAt: A6 @ 1:46-1:52 |
|
|
|
|
|
|
|
|
| A33: Nodes<Defn> |
| 1:102-1:118 |
|
| A29: DefFunDefn f |
| 1:102-1:118 |
|
|
| A22: AtomType INT |
| 1:110-1:112 |
|
|
|
| A27: Nodes<Expr> |
| 1:116-1:118 |
|
| A25: BinExpr ADD |
| 1:116-1:118 |
|
| A23: AtomExpr 5 |
| 1:116-1:116 |
|
|
| A24: AtomExpr 5 |
| 1:118-1:118 |
|
|
|
|
|
|
|
|
| A34: Nodes<Expr> |
| 1:123-1:136 |
|
| A32: SizeExpr |
| 1:123-1:136 |
|
| A31: ArrType ArrType[10] |
| 1:130-1:136 |
|
| A30: AtomType INT |
| 1:134-1:136 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
test13.p26
fun a(ab : int, E4 : bool, E5 : bool, E6 : bool, E7 : bool, E8 : bool, E9 : bool, E10 : bool, E3 : bool): int = if if E4 then E5, E6 else E7, E8 end then while E9 do E10, "QWERHBEQR ", (if E4 then E5, E6 else E7, E8 end), E3 end end
| A55: Nodes<Defn> |
| 1:1-1:232 |
|
| A54: DefFunDefn a |
| 1:1-1:232 |
|
| A51: Nodes<ParDefn> |
| 1:6-1:104 |
|
|
| A0: AtomType INT |
| 1:12-1:14 |
|
|
|
|
| A2: AtomType BOOL |
| 1:22-1:25 |
|
|
|
|
| A4: AtomType BOOL |
| 1:33-1:36 |
|
|
|
|
| A6: AtomType BOOL |
| 1:44-1:47 |
|
|
|
|
| A8: AtomType BOOL |
| 1:55-1:58 |
|
|
|
| A11: ParDefn E8 |
| 1:61-1:69 |
|
| A10: AtomType BOOL |
| 1:66-1:69 |
|
|
|
| A13: ParDefn E9 |
| 1:72-1:80 |
|
| A12: AtomType BOOL |
| 1:77-1:80 |
|
|
|
| A15: ParDefn E10 |
| 1:83-1:92 |
|
| A14: AtomType BOOL |
| 1:89-1:92 |
|
|
|
| A17: ParDefn E3 |
| 1:95-1:103 |
|
| A16: AtomType BOOL |
| 1:100-1:103 |
|
|
|
|
| A18: AtomType INT |
| 1:107-1:109 |
|
|
|
| A52: Nodes<Expr> |
| 1:113-1:232 |
|
| A50: IfThenExpr |
| 1:113-1:232 |
|
| A28: IfThenElseExpr |
| 1:116-1:148 |
|
| A19: NameExpr E4 |
| 1:119-1:120 |
| defAt: A3 @ 1:17-1:25 |
|
|
|
| A24: Nodes<Expr> |
| 1:127-1:132 |
|
| A20: NameExpr E5 |
| 1:127-1:128 |
| defAt: A5 @ 1:28-1:36 |
|
|
| A21: NameExpr E6 |
| 1:131-1:132 |
| defAt: A7 @ 1:39-1:47 |
|
|
|
|
|
| A26: Nodes<Expr> |
| 1:139-1:144 |
|
| A22: NameExpr E7 |
| 1:139-1:140 |
| defAt: A9 @ 1:50-1:58 |
|
|
| A23: NameExpr E8 |
| 1:143-1:144 |
| defAt: A11 @ 1:61-1:69 |
|
|
|
|
|
|
| A48: Nodes<Expr> |
| 1:155-1:228 |
|
| A47: WhileExpr |
| 1:155-1:228 |
|
| A29: NameExpr E9 |
| 1:161-1:162 |
| defAt: A13 @ 1:72-1:80 |
|
|
|
| A45: Nodes<Expr> |
| 1:167-1:224 |
|
| A30: NameExpr E10 |
| 1:167-1:169 |
| defAt: A15 @ 1:83-1:92 |
|
|
| A31: AtomExpr "QWERHBEQR " |
| 1:172-1:183 |
|
|
|
| A42: Nodes<Expr> |
| 1:186-1:220 |
|
| A41: IfThenElseExpr |
| 1:187-1:219 |
|
| A32: NameExpr E4 |
| 1:190-1:191 |
| defAt: A3 @ 1:17-1:25 |
|
|
|
| A37: Nodes<Expr> |
| 1:198-1:203 |
|
| A33: NameExpr E5 |
| 1:198-1:199 |
| defAt: A5 @ 1:28-1:36 |
|
|
| A34: NameExpr E6 |
| 1:202-1:203 |
| defAt: A7 @ 1:39-1:47 |
|
|
|
|
|
| A39: Nodes<Expr> |
| 1:210-1:215 |
|
| A35: NameExpr E7 |
| 1:210-1:211 |
| defAt: A9 @ 1:50-1:58 |
|
|
| A36: NameExpr E8 |
| 1:214-1:215 |
| defAt: A11 @ 1:61-1:69 |
|
|
|
|
|
|
|
| A44: NameExpr E3 |
| 1:223-1:224 |
| defAt: A17 @ 1:95-1:103 |
|
|
|
|
|
|
|
|
|
|
|
|
test14.p26
fun f(a : int, b : int, c : int) : bool = not a+b*b+a-c % 10 as int
| A25: Nodes<Defn> |
| 1:1-1:67 |
|
| A24: DefFunDefn f |
| 1:1-1:67 |
|
| A21: Nodes<ParDefn> |
| 1:6-1:32 |
|
|
| A0: AtomType INT |
| 1:11-1:13 |
|
|
|
|
| A2: AtomType INT |
| 1:20-1:22 |
|
|
|
|
| A4: AtomType INT |
| 1:29-1:31 |
|
|
|
|
| A6: AtomType BOOL |
| 1:36-1:39 |
|
|
|
| A22: Nodes<Expr> |
| 1:43-1:67 |
|
|
| A18: BinExpr SUB |
| 1:43-1:60 |
|
| A14: BinExpr ADD |
| 1:43-1:53 |
|
| A12: BinExpr ADD |
| 1:43-1:51 |
|
| A8: PfxExpr NOT |
| 1:43-1:47 |
|
| A7: NameExpr a |
| 1:47-1:47 |
| defAt: A1 @ 1:7-1:13 |
|
|
|
| A11: BinExpr MUL |
| 1:49-1:51 |
|
| A9: NameExpr b |
| 1:49-1:49 |
| defAt: A3 @ 1:16-1:22 |
|
|
| A10: NameExpr b |
| 1:51-1:51 |
| defAt: A3 @ 1:16-1:22 |
|
|
|
|
| A13: NameExpr a |
| 1:53-1:53 |
| defAt: A1 @ 1:7-1:13 |
|
|
|
| A17: BinExpr MOD |
| 1:55-1:60 |
|
| A15: NameExpr c |
| 1:55-1:55 |
| defAt: A5 @ 1:25-1:31 |
|
|
| A16: AtomExpr 10 |
| 1:59-1:60 |
|
|
|
|
| A19: AtomType INT |
| 1:65-1:67 |
|
|
|
|
|
|
|
test15.p26
var b : int
fun f(a : int) : void = a = b or false and true != false + 2 * 4 ^
| A23: Nodes<Defn> |
| 1:1-2:68 |
|
|
| A0: AtomType INT |
| 1:9-1:11 |
|
|
|
| A22: DefFunDefn f |
| 2:1-2:68 |
|
| A19: Nodes<ParDefn> |
| 2:6-2:14 |
|
|
| A2: AtomType INT |
| 2:11-2:13 |
|
|
|
|
| A4: AtomType VOID |
| 2:18-2:21 |
|
|
|
| A20: Nodes<Expr> |
| 2:25-2:68 |
|
|
| A5: NameExpr a |
| 2:25-2:25 |
| defAt: A3 @ 2:7-2:13 |
|
|
| A17: BinExpr OR |
| 2:29-2:68 |
|
| A6: NameExpr b |
| 2:29-2:29 |
| defAt: A1 @ 1:1-1:11 |
|
|
| A16: BinExpr AND |
| 2:36-2:68 |
|
| A7: AtomExpr false |
| 2:36-2:40 |
|
|
| A15: BinExpr NEQ |
| 2:46-2:68 |
|
| A8: AtomExpr true |
| 2:46-2:49 |
|
|
| A14: BinExpr ADD |
| 2:54-2:68 |
|
| A9: AtomExpr false |
| 2:54-2:58 |
|
|
| A13: BinExpr MUL |
| 2:62-2:68 |
|
| A10: AtomExpr 2 |
| 2:62-2:62 |
|
|
| A12: SfxExpr PTR |
| 2:66-2:68 |
|
| A11: AtomExpr 4 |
| 2:66-2:66 |
|
|
|
|
|
|
|
|
|
|
|
|
|
test16.p26
typ a = (::int)
fun f() : {a: int} =
^a^
|
|
|
|
| A0: AtomType INT |
| 1:12-1:14 |
|
|
|
|
| A14: DefFunDefn f |
| 2:1-3:7 |
|
|
|
| A6: Nodes<CompDefn> |
| 2:12-2:17 |
|
|
| A4: AtomType INT |
| 2:15-2:17 |
|
|
|
|
|
|
|
|
|
| A8: NameExpr a |
| 3:6-3:6 |
| defAt: A3 @ 1:1-1:15 |
|
|
|
|
|
|
|
|
test17.p26
typ hax = {a : int}
var id : (((((((int)))))))
fun x() : void =
(1, 2, 3, 4)
| A18: Nodes<Defn> |
| 1:1-4:20 |
|
|
|
| A2: Nodes<CompDefn> |
| 1:12-1:18 |
|
|
| A0: AtomType INT |
| 1:16-1:18 |
|
|
|
|
|
|
|
| A5: AtomType INT |
| 2:10-2:26 |
|
|
|
| A17: DefFunDefn x |
| 3:1-4:20 |
|
|
| A7: AtomType VOID |
| 3:11-3:14 |
|
|
|
| A15: Nodes<Expr> |
| 4:9-4:20 |
|
|
| A12: Nodes<Expr> |
| 4:9-4:20 |
|
|
|
| A10: AtomExpr 3 |
| 4:16-4:16 |
|
|
| A11: AtomExpr 4 |
| 4:19-4:19 |
|
|
|
|
|
|
|
|
test18.p26
fun a(b: int): int =
b * while b do b + 1 end
| A16: Nodes<Defn> |
| 1:1-3:28 |
|
| A15: DefFunDefn a |
| 1:1-3:28 |
|
| A12: Nodes<ParDefn> |
| 1:6-1:13 |
|
|
| A0: AtomType INT |
| 1:10-1:12 |
|
|
|
|
| A2: AtomType INT |
| 1:16-1:18 |
|
|
|
| A13: Nodes<Expr> |
| 3:5-3:28 |
|
| A11: BinExpr MUL |
| 3:5-3:28 |
|
| A3: NameExpr b |
| 3:5-3:5 |
| defAt: A1 @ 1:7-1:12 |
|
|
|
| A4: NameExpr b |
| 3:15-3:15 |
| defAt: A1 @ 1:7-1:12 |
|
|
|
| A8: Nodes<Expr> |
| 3:20-3:24 |
|
| A7: BinExpr ADD |
| 3:20-3:24 |
|
| A5: NameExpr b |
| 3:20-3:20 |
| defAt: A1 @ 1:7-1:12 |
|
|
|
|
|
|
|
|
|
|
|
|
test19.p26
typ stevilka = int
var globalnast : stevilka
fun funkcija (prviarg : stevilka, drugiarg : bool, a : int, b : int, c : int) : int =
let
var nvoaspr : int
in
nvoaspr = a + -b - c,
nvoaspr = nvoaspr * 3 + 2,
nvoaspr = nvoaspr + 3 * 2,
nvoaspr = 1 - 3 + 2,
nvoaspr = 1 / 3 * 2 + 1 * 3 / 2,
if 1 == 2 then 666 end
end
| A74: Nodes<Defn> |
| 1:1-13:11 |
|
| A1: TypDefn stevilka |
| 1:1-1:18 |
|
| A0: AtomType INT |
| 1:16-1:18 |
|
|
|
| A3: VarDefn globalnast |
| 2:1-2:25 |
|
| A2: NameType stevilka |
| 2:18-2:25 |
| defAt: A1 @ 1:1-1:18 |
|
|
|
| A73: DefFunDefn funkcija |
| 3:1-13:11 |
|
| A70: Nodes<ParDefn> |
| 3:14-3:77 |
|
| A5: ParDefn prviarg |
| 3:15-3:32 |
|
| A4: NameType stevilka |
| 3:25-3:32 |
| defAt: A1 @ 1:1-1:18 |
|
|
|
| A7: ParDefn drugiarg |
| 3:35-3:49 |
|
| A6: AtomType BOOL |
| 3:46-3:49 |
|
|
|
|
| A8: AtomType INT |
| 3:56-3:58 |
|
|
|
|
| A10: AtomType INT |
| 3:65-3:67 |
|
|
|
|
| A12: AtomType INT |
| 3:74-3:76 |
|
|
|
|
| A14: AtomType INT |
| 3:81-3:83 |
|
|
|
| A71: Nodes<Expr> |
| 4:9-13:11 |
|
|
| A66: Nodes<Defn> |
| 5:17-5:33 |
|
| A16: VarDefn nvoaspr |
| 5:17-5:33 |
|
| A15: AtomType INT |
| 5:31-5:33 |
|
|
|
|
|
| A67: Nodes<Expr> |
| 7:17-12:38 |
|
|
| A17: NameExpr nvoaspr |
| 7:17-7:23 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A23: BinExpr SUB |
| 7:27-7:36 |
|
| A21: BinExpr ADD |
| 7:27-7:32 |
|
| A18: NameExpr a |
| 7:27-7:27 |
| defAt: A9 @ 3:52-3:58 |
|
|
| A20: PfxExpr SUB |
| 7:31-7:32 |
|
| A19: NameExpr b |
| 7:32-7:32 |
| defAt: A11 @ 3:61-3:67 |
|
|
|
|
| A22: NameExpr c |
| 7:36-7:36 |
| defAt: A13 @ 3:70-3:76 |
|
|
|
|
|
| A25: NameExpr nvoaspr |
| 8:17-8:23 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A30: BinExpr ADD |
| 8:27-8:41 |
|
| A28: BinExpr MUL |
| 8:27-8:37 |
|
| A26: NameExpr nvoaspr |
| 8:27-8:33 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A27: AtomExpr 3 |
| 8:37-8:37 |
|
|
|
| A29: AtomExpr 2 |
| 8:41-8:41 |
|
|
|
|
|
| A32: NameExpr nvoaspr |
| 9:17-9:23 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A37: BinExpr ADD |
| 9:27-9:41 |
|
| A33: NameExpr nvoaspr |
| 9:27-9:33 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A36: BinExpr MUL |
| 9:37-9:41 |
|
| A34: AtomExpr 3 |
| 9:37-9:37 |
|
|
| A35: AtomExpr 2 |
| 9:41-9:41 |
|
|
|
|
|
| A45: AsgnExpr |
| 10:17-10:35 |
|
| A39: NameExpr nvoaspr |
| 10:17-10:23 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A44: BinExpr ADD |
| 10:27-10:35 |
|
| A42: BinExpr SUB |
| 10:27-10:31 |
|
| A40: AtomExpr 1 |
| 10:27-10:27 |
|
|
| A41: AtomExpr 3 |
| 10:31-10:31 |
|
|
|
| A43: AtomExpr 2 |
| 10:35-10:35 |
|
|
|
|
| A58: AsgnExpr |
| 11:17-11:47 |
|
| A46: NameExpr nvoaspr |
| 11:17-11:23 |
| defAt: A16 @ 5:17-5:33 |
|
|
| A57: BinExpr ADD |
| 11:27-11:47 |
|
| A51: BinExpr MUL |
| 11:27-11:35 |
|
| A49: BinExpr DIV |
| 11:27-11:31 |
|
| A47: AtomExpr 1 |
| 11:27-11:27 |
|
|
| A48: AtomExpr 3 |
| 11:31-11:31 |
|
|
|
| A50: AtomExpr 2 |
| 11:35-11:35 |
|
|
|
| A56: BinExpr DIV |
| 11:39-11:47 |
|
| A54: BinExpr MUL |
| 11:39-11:43 |
|
| A52: AtomExpr 1 |
| 11:39-11:39 |
|
|
| A53: AtomExpr 3 |
| 11:43-11:43 |
|
|
|
| A55: AtomExpr 2 |
| 11:47-11:47 |
|
|
|
|
|
| A65: IfThenExpr |
| 12:17-12:38 |
|
| A61: BinExpr EQU |
| 12:20-12:25 |
|
| A59: AtomExpr 1 |
| 12:20-12:20 |
|
|
| A60: AtomExpr 2 |
| 12:25-12:25 |
|
|
|
|
| A63: Nodes<Expr> |
| 12:32-12:34 |
|
| A62: AtomExpr 666 |
| 12:32-12:34 |
|
|
|
|
|
|
|
|
|
|
|
|
test1.p26
typ test = (a: int, b: char)
|
| A6: TypDefn test |
| 1:1-1:28 |
|
|
| A4: Nodes<CompDefn> |
| 1:13-1:27 |
|
|
| A0: AtomType INT |
| 1:16-1:18 |
|
|
|
|
| A2: AtomType CHAR |
| 1:24-1:27 |
|
|
|
|
|
|
|
test20.p26
fun g () : void = f()
fun f () : void
| A11: Nodes<Defn> |
| 1:1-2:15 |
|
| A7: DefFunDefn g |
| 1:1-1:21 |
|
|
| A0: AtomType VOID |
| 1:12-1:15 |
|
|
|
| A5: Nodes<Expr> |
| 1:19-1:21 |
|
|
| A1: NameExpr f |
| 1:19-1:19 |
| defAt: A10 @ 2:1-2:15 |
|
|
|
|
|
|
|
| A10: ExtFunDefn f |
| 2:1-2:15 |
|
|
| A8: AtomType VOID |
| 2:12-2:15 |
|
|
|
|
test21.p26
fun f() : void =
let
fun g() : void =
h(),
let
fun f() : void = g()
fun g() : void
fun x() : void
in
f(),
g(),
h()
end
fun h() : void
in
f, g, h
end
| A50: Nodes<Defn> |
| 1:1-17:11 |
|
| A49: DefFunDefn f |
| 1:1-17:11 |
|
|
| A0: AtomType VOID |
| 1:11-1:14 |
|
|
|
| A47: Nodes<Expr> |
| 2:9-17:11 |
|
|
| A42: Nodes<Defn> |
| 3:17-14:30 |
|
| A35: DefFunDefn g |
| 3:17-13:27 |
|
|
| A1: AtomType VOID |
| 3:27-3:30 |
|
|
|
| A33: Nodes<Expr> |
| 4:25-13:27 |
|
|
| A2: NameExpr h |
| 4:25-4:25 |
| defAt: A38 @ 14:17-14:30 |
|
|
|
|
|
| A28: Nodes<Defn> |
| 6:33-8:46 |
|
| A12: DefFunDefn f |
| 6:33-6:52 |
|
|
| A5: AtomType VOID |
| 6:43-6:46 |
|
|
|
| A10: Nodes<Expr> |
| 6:50-6:52 |
|
|
| A6: NameExpr g |
| 6:50-6:50 |
| defAt: A15 @ 7:33-7:46 |
|
|
|
|
|
|
|
| A15: ExtFunDefn g |
| 7:33-7:46 |
|
|
| A13: AtomType VOID |
| 7:43-7:46 |
|
|
|
| A18: ExtFunDefn x |
| 8:33-8:46 |
|
|
| A16: AtomType VOID |
| 8:43-8:46 |
|
|
|
|
|
| A29: Nodes<Expr> |
| 10:33-12:35 |
|
| A21: CallExpr |
| 10:33-10:35 |
|
| A19: NameExpr f |
| 10:33-10:33 |
| defAt: A12 @ 6:33-6:52 |
|
|
|
|
| A24: CallExpr |
| 11:33-11:35 |
|
| A22: NameExpr g |
| 11:33-11:33 |
| defAt: A15 @ 7:33-7:46 |
|
|
|
|
| A27: CallExpr |
| 12:33-12:35 |
|
| A25: NameExpr h |
| 12:33-12:33 |
| defAt: A38 @ 14:17-14:30 |
|
|
|
|
|
|
|
|
|
|
| A38: ExtFunDefn h |
| 14:17-14:30 |
|
|
| A36: AtomType VOID |
| 14:27-14:30 |
|
|
|
|
|
| A43: Nodes<Expr> |
| 16:17-16:23 |
|
| A39: NameExpr f |
| 16:17-16:17 |
| defAt: A49 @ 1:1-17:11 |
|
|
| A40: NameExpr g |
| 16:20-16:20 |
| defAt: A35 @ 3:17-13:27 |
|
|
| A41: NameExpr h |
| 16:23-16:23 |
| defAt: A38 @ 14:17-14:30 |
|
|
|
|
|
|
|
|
|
test22.p26
typ t1 = t2
typ t2 = t1
|
|
| A0: NameType t2 |
| 1:10-1:11 |
| defAt: A3 @ 2:1-2:11 |
|
|
|
|
| A2: NameType t1 |
| 2:10-2:11 |
| defAt: A1 @ 1:1-1:11 |
|
|
|
|
test2.p26
// defnList test
fun f() : int = let typ a = int typ b = int in a, b end
| A15: Nodes<Defn> |
| 2:1-2:55 |
|
| A14: DefFunDefn f |
| 2:1-2:55 |
|
|
| A0: AtomType INT |
| 2:11-2:13 |
|
|
|
| A12: Nodes<Expr> |
| 2:17-2:55 |
|
|
| A7: Nodes<Defn> |
| 2:21-2:43 |
|
|
| A1: AtomType INT |
| 2:29-2:31 |
|
|
|
|
| A3: AtomType INT |
| 2:41-2:43 |
|
|
|
|
|
| A8: Nodes<Expr> |
| 2:48-2:51 |
|
| A5: NameExpr a |
| 2:48-2:48 |
| defAt: A2 @ 2:21-2:31 |
|
|
| A6: NameExpr b |
| 2:51-2:51 |
| defAt: A4 @ 2:33-2:43 |
|
|
|
|
|
|
|
|
|
test3.p26
typ idt = int
typ T1 = int
typ T2 = T1
typ T3 = T2
typ id = idt
var idv : [10]idt
fun idf ( id1 : T1 , id2 : T2 , id3 : T3 ) : idt
fun idff ( abc : id) : idt = 1, 2, 3, while 2 do 1, 2, 3 end
| A39: Nodes<Defn> |
| 1:1-11:60 |
|
|
| A0: AtomType INT |
| 1:11-1:13 |
|
|
|
|
| A2: AtomType INT |
| 2:10-2:12 |
|
|
|
|
| A4: NameType T1 |
| 3:10-3:11 |
| defAt: A3 @ 2:1-2:12 |
|
|
|
|
| A6: NameType T2 |
| 4:10-4:11 |
| defAt: A5 @ 3:1-3:11 |
|
|
|
|
| A8: NameType idt |
| 5:10-5:12 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
| A12: VarDefn idv |
| 7:1-7:17 |
|
| A11: ArrType ArrType[10] |
| 7:11-7:17 |
|
| A10: NameType idt |
| 7:15-7:17 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
|
| A21: ExtFunDefn idf |
| 9:1-9:48 |
|
| A20: Nodes<ParDefn> |
| 9:9-9:42 |
|
| A14: ParDefn id1 |
| 9:11-9:18 |
|
| A13: NameType T1 |
| 9:17-9:18 |
| defAt: A3 @ 2:1-2:12 |
|
|
|
| A16: ParDefn id2 |
| 9:22-9:29 |
|
| A15: NameType T2 |
| 9:28-9:29 |
| defAt: A5 @ 3:1-3:11 |
|
|
|
| A18: ParDefn id3 |
| 9:33-9:40 |
|
| A17: NameType T3 |
| 9:39-9:40 |
| defAt: A7 @ 4:1-4:11 |
|
|
|
|
| A19: NameType idt |
| 9:46-9:48 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
| A38: DefFunDefn idff |
| 11:1-11:60 |
|
| A35: Nodes<ParDefn> |
| 11:10-11:20 |
|
| A23: ParDefn abc |
| 11:12-11:19 |
|
| A22: NameType id |
| 11:18-11:19 |
| defAt: A9 @ 5:1-5:12 |
|
|
|
|
| A24: NameType idt |
| 11:24-11:26 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
| A36: Nodes<Expr> |
| 11:30-11:60 |
|
| A25: AtomExpr 1 |
| 11:30-11:30 |
|
|
| A26: AtomExpr 2 |
| 11:33-11:33 |
|
|
| A27: AtomExpr 3 |
| 11:36-11:36 |
|
|
| A34: WhileExpr |
| 11:39-11:60 |
|
| A28: AtomExpr 2 |
| 11:45-11:45 |
|
|
|
| A32: Nodes<Expr> |
| 11:50-11:56 |
|
| A29: AtomExpr 1 |
| 11:50-11:50 |
|
|
| A30: AtomExpr 2 |
| 11:53-11:53 |
|
|
| A31: AtomExpr 3 |
| 11:56-11:56 |
|
|
|
|
|
|
|
|
|
test4.p26
typ id = ^^^^^^^^^^^^^^void
typ id2 = [1][2][4]bool
typ randomid = id2
var id3 : (a:[1][2][4]bool, b: ^^^^^^^^^^^^^^void, c: randomid, d : int, e : bool, f : char, g : { h : ^^int, i: void} )
| A64: Nodes<Defn> |
| 1:1-4:120 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A0: AtomType VOID |
| 1:24-1:27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A20: TypDefn id2 |
| 2:1-2:23 |
|
| A19: ArrType ArrType[1] |
| 2:11-2:23 |
|
| A18: ArrType ArrType[2] |
| 2:14-2:23 |
|
| A17: ArrType ArrType[4] |
| 2:17-2:23 |
|
| A16: AtomType BOOL |
| 2:20-2:23 |
|
|
|
|
|
|
| A22: TypDefn randomid |
| 3:1-3:18 |
|
| A21: NameType id2 |
| 3:16-3:18 |
| defAt: A20 @ 2:1-2:23 |
|
|
|
| A63: VarDefn id3 |
| 4:1-4:120 |
|
|
| A61: Nodes<CompDefn> |
| 4:12-4:118 |
|
| A27: CompDefn a |
| 4:12-4:26 |
|
| A26: ArrType ArrType[1] |
| 4:14-4:26 |
|
| A25: ArrType ArrType[2] |
| 4:17-4:26 |
|
| A24: ArrType ArrType[4] |
| 4:20-4:26 |
|
| A23: AtomType BOOL |
| 4:23-4:26 |
|
|
|
|
|
|
| A43: CompDefn b |
| 4:29-4:49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A28: AtomType VOID |
| 4:46-4:49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A45: CompDefn c |
| 4:52-4:62 |
|
| A44: NameType randomid |
| 4:55-4:62 |
| defAt: A22 @ 3:1-3:18 |
|
|
|
| A47: CompDefn d |
| 4:65-4:71 |
|
| A46: AtomType INT |
| 4:69-4:71 |
|
|
|
| A49: CompDefn e |
| 4:74-4:81 |
|
| A48: AtomType BOOL |
| 4:78-4:81 |
|
|
|
| A51: CompDefn f |
| 4:84-4:91 |
|
| A50: AtomType CHAR |
| 4:88-4:91 |
|
|
|
| A60: CompDefn g |
| 4:94-4:118 |
|
|
| A58: Nodes<CompDefn> |
| 4:100-4:117 |
|
| A55: CompDefn h |
| 4:100-4:108 |
|
|
|
| A52: AtomType INT |
| 4:106-4:108 |
|
|
|
|
|
| A57: CompDefn i |
| 4:111-4:117 |
|
| A56: AtomType VOID |
| 4:114-4:117 |
|
|
|
|
|
|
|
|
|
|
test5.p26
typ randomid = void
var id4 : (a:[1][2][4]bool, b: ^^^^^^^^^^^^^^void, c: randomid, x: (d : int, e : bool, f : char, g : { h : ^^int, i: void}) )
| A46: Nodes<Defn> |
| 1:1-2:125 |
|
| A1: TypDefn randomid |
| 1:1-1:19 |
|
| A0: AtomType VOID |
| 1:16-1:19 |
|
|
|
| A45: VarDefn id4 |
| 2:1-2:125 |
|
|
| A43: Nodes<CompDefn> |
| 2:12-2:123 |
|
|
| A5: ArrType ArrType[1] |
| 2:14-2:26 |
|
| A4: ArrType ArrType[2] |
| 2:17-2:26 |
|
| A3: ArrType ArrType[4] |
| 2:20-2:26 |
|
| A2: AtomType BOOL |
| 2:23-2:26 |
|
|
|
|
|
|
| A22: CompDefn b |
| 2:29-2:49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A7: AtomType VOID |
| 2:46-2:49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A24: CompDefn c |
| 2:52-2:62 |
|
| A23: NameType randomid |
| 2:55-2:62 |
| defAt: A1 @ 1:1-1:19 |
|
|
|
| A42: CompDefn x |
| 2:65-2:123 |
|
|
| A40: Nodes<CompDefn> |
| 2:69-2:122 |
|
| A26: CompDefn d |
| 2:69-2:75 |
|
| A25: AtomType INT |
| 2:73-2:75 |
|
|
|
| A28: CompDefn e |
| 2:78-2:85 |
|
| A27: AtomType BOOL |
| 2:82-2:85 |
|
|
|
| A30: CompDefn f |
| 2:88-2:95 |
|
| A29: AtomType CHAR |
| 2:92-2:95 |
|
|
|
| A39: CompDefn g |
| 2:98-2:122 |
|
|
| A37: Nodes<CompDefn> |
| 2:104-2:121 |
|
| A34: CompDefn h |
| 2:104-2:112 |
|
|
|
| A31: AtomType INT |
| 2:110-2:112 |
|
|
|
|
|
| A36: CompDefn i |
| 2:115-2:121 |
|
| A35: AtomType VOID |
| 2:118-2:121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
test6.p26
var rav : { a: {a: int}, b: (:{a: ( g : int)}:bool)}
| A19: Nodes<Defn> |
| 1:1-1:52 |
|
| A18: VarDefn rav |
| 1:1-1:52 |
|
|
| A16: Nodes<CompDefn> |
| 1:13-1:51 |
|
|
|
| A2: Nodes<CompDefn> |
| 1:17-1:22 |
|
|
| A0: AtomType INT |
| 1:20-1:22 |
|
|
|
|
|
|
| A15: CompDefn b |
| 1:26-1:51 |
|
|
| A13: Nodes<Type> |
| 1:30-1:46 |
|
|
| A10: Nodes<CompDefn> |
| 1:32-1:44 |
|
|
|
| A7: Nodes<CompDefn> |
| 1:37-1:43 |
|
|
| A5: AtomType INT |
| 1:41-1:43 |
|
|
|
|
|
|
|
|
|
| A12: AtomType BOOL |
| 1:47-1:50 |
|
|
|
|
|
|
|
|
test7.p26
typ id = char
typ t = (((id)))
typ t2 = (id: (int))
typ t3 = (((({a: int}))))
| A14: Nodes<Defn> |
| 1:1-4:25 |
|
|
| A0: AtomType CHAR |
| 1:10-1:13 |
|
|
|
|
| A2: NameType id |
| 2:9-2:16 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
|
|
| A6: Nodes<CompDefn> |
| 3:11-3:19 |
|
| A5: CompDefn id |
| 3:11-3:19 |
|
| A4: AtomType INT |
| 3:15-3:19 |
|
|
|
|
|
|
|
|
| A11: Nodes<CompDefn> |
| 4:15-4:20 |
|
| A10: CompDefn a |
| 4:15-4:20 |
|
| A9: AtomType INT |
| 4:18-4:20 |
|
|
|
|
|
|
|
test8.p26
typ randomid = int
fun abc () : (a:[1][2][4]bool, b: ^^^^^^^^^^^^^^void, c: randomid, x: (d : int, e : bool, f : char, g : { h : ^^int, i: void}) )
| A47: Nodes<Defn> |
| 1:1-2:128 |
|
| A1: TypDefn randomid |
| 1:1-1:18 |
|
| A0: AtomType INT |
| 1:16-1:18 |
|
|
|
| A46: ExtFunDefn abc |
| 2:1-2:128 |
|
|
|
| A43: Nodes<CompDefn> |
| 2:15-2:126 |
|
|
| A5: ArrType ArrType[1] |
| 2:17-2:29 |
|
| A4: ArrType ArrType[2] |
| 2:20-2:29 |
|
| A3: ArrType ArrType[4] |
| 2:23-2:29 |
|
| A2: AtomType BOOL |
| 2:26-2:29 |
|
|
|
|
|
|
| A22: CompDefn b |
| 2:32-2:52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A7: AtomType VOID |
| 2:49-2:52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| A24: CompDefn c |
| 2:55-2:65 |
|
| A23: NameType randomid |
| 2:58-2:65 |
| defAt: A1 @ 1:1-1:18 |
|
|
|
| A42: CompDefn x |
| 2:68-2:126 |
|
|
| A40: Nodes<CompDefn> |
| 2:72-2:125 |
|
| A26: CompDefn d |
| 2:72-2:78 |
|
| A25: AtomType INT |
| 2:76-2:78 |
|
|
|
| A28: CompDefn e |
| 2:81-2:88 |
|
| A27: AtomType BOOL |
| 2:85-2:88 |
|
|
|
| A30: CompDefn f |
| 2:91-2:98 |
|
| A29: AtomType CHAR |
| 2:95-2:98 |
|
|
|
| A39: CompDefn g |
| 2:101-2:125 |
|
|
| A37: Nodes<CompDefn> |
| 2:107-2:124 |
|
| A34: CompDefn h |
| 2:107-2:115 |
|
|
|
| A31: AtomType INT |
| 2:113-2:115 |
|
|
|
|
|
| A36: CompDefn i |
| 2:118-2:124 |
|
| A35: AtomType VOID |
| 2:121-2:124 |
|
|
|
|
|
|
|
|
|
|
|
|
|
test9.p26
typ idt = int
fun id ( id : idt ) : (a:[1][2][4][12]void) = id, 1, true, false, 'a', "niz", "niz spet", none, nil
| A25: Nodes<Defn> |
| 1:1-2:99 |
|
|
| A0: AtomType INT |
| 1:11-1:13 |
|
|
|
| A24: DefFunDefn id |
| 2:1-2:99 |
|
| A21: Nodes<ParDefn> |
| 2:8-2:19 |
|
|
| A2: NameType idt |
| 2:15-2:17 |
| defAt: A1 @ 1:1-1:13 |
|
|
|
|
|
| A10: Nodes<CompDefn> |
| 2:24-2:42 |
|
|
| A8: ArrType ArrType[1] |
| 2:26-2:42 |
|
| A7: ArrType ArrType[2] |
| 2:29-2:42 |
|
| A6: ArrType ArrType[4] |
| 2:32-2:42 |
|
| A5: ArrType ArrType[12] |
| 2:35-2:42 |
|
| A4: AtomType VOID |
| 2:39-2:42 |
|
|
|
|
|
|
|
|
|
|
| A22: Nodes<Expr> |
| 2:47-2:99 |
|
| A12: NameExpr id |
| 2:47-2:48 |
| defAt: A3 @ 2:10-2:17 |
|
|
| A13: AtomExpr 1 |
| 2:51-2:51 |
|
|
| A14: AtomExpr true |
| 2:54-2:57 |
|
|
| A15: AtomExpr false |
| 2:60-2:64 |
|
|
| A16: AtomExpr 'a' |
| 2:67-2:69 |
|
|
| A17: AtomExpr "niz" |
| 2:72-2:76 |
|
|
| A18: AtomExpr "niz spet" |
| 2:79-2:88 |
|
|
| A19: AtomExpr none |
| 2:91-2:94 |
|
|
| A20: AtomExpr nil |
| 2:97-2:99 |
|
|
|
|
|
|