source
prog
defn
FUN
1:1-1:3
fun
ID
1:5-1:5
a
LBRACKET
1:6-1:6
(
RBRACKET
1:7-1:7
)
COLON
1:8-1:8
:
type
ID
1:9-1:10
ab
EQUALS
1:12-1:12
=
expr
IF
1:14-1:15
if
expr
IF
1:17-1:18
if
expr
ID
1:20-1:21
E4
THEN
1:23-1:26
then
expr
ID
1:28-1:29
E5
COMMA
1:30-1:30
,
expr
ID
1:32-1:33
E6
ELSE
1:35-1:38
else
expr
ID
1:40-1:41
E7
COMMA
1:42-1:42
,
expr
ID
1:44-1:45
E8
END
1:47-1:49
end
THEN
1:51-1:54
then
expr
WHILE
1:56-1:60
while
expr
ID
1:62-1:63
E9
DO
1:65-1:66
do
expr
ID
1:68-1:70
E10
COMMA
1:71-1:71
,
expr
STRING
1:73-1:84
"QWERHBEQR "
COMMA
1:85-1:85
,
expr
LBRACKET
1:87-1:87
(
expr
IF
1:88-1:89
if
expr
ID
1:91-1:92
E4
THEN
1:94-1:97
then
expr
ID
1:99-1:100
E5
COMMA
1:101-1:101
,
expr
ID
1:103-1:104
E6
ELSE
1:106-1:109
else
expr
ID
1:111-1:112
E7
COMMA
1:113-1:113
,
expr
ID
1:115-1:116
E8
END
1:118-1:120
end
RBRACKET
1:121-1:121
)
COMMA
1:122-1:122
,
expr
ID
1:124-1:125
E3
END
1:127-1:129
end
END
1:131-1:133
end
EOF