funcons-simple-0.1.0.3: tests/Kexceptions/Kexceptions02.fct
initialise-binding initialise-storing initialise-giving finalise-failing finalise-throwing scope
(collateral (bind
("main",
allocate-variable (functions
(tuples ((values)*),
values))),
bind
("foo",
allocate-variable (functions
(tuples ((values)*),
values)))),
sequential (assign
(bound ("main"),
function closure (scope
(match
(given,
tuple ()),
handle-return (handle-thrown
(effect (apply
(assigned (bound ("foo")),
tuple ())),
scope
(bind
("e",
allocate-initialised-variable
(values,
given)),
print (assigned (bound ("e")),
"\n"))))))),
assign
(bound ("foo"),
function closure (scope
(match
(given,
tuple ()),
handle-return (sequential
(handle-thrown
(sequential
(throw (decimal-natural ("5")),
print (decimal-natural ("17"))),
scope
(bind
("e",
allocate-initialised-variable
(values,
given)),
throw (integer-add
(assigned (bound ("e")),
decimal-natural ("2"))))),
throw (decimal-natural ("1"))))))),
apply
(assigned (bound ("main")),
tuple ())))