puh, i needed 2 days to think about it ... what a pain. well, well, it's not java ;-) but i like it! :-)

the answer was to paste all the events into one event handler statement:

on (release, keypress "3") {
add_digit ("3");
}

(and forget about the Key object and other lightweighted-OOP stuff)

groovy, isn't it?