I am not sure I get your question right, but there is no canvas. You just switch to the graphics mode (just as it was done in the likes of QBasic) and draw stuff using the graphics functions.
Here is a screen grab of a poor attempt at implementing the old paratrooper game
So there aren't any GUI controls, buttons, input fields, &c.?
Would there be a way to add those in the future?
I'm really fond of Oberon (printed out the entire manual and read it over multiple times when I was younger and probably still have it somewhere), and Lua has worked well for me in lualatex: https://tex.stackexchange.com/questions/723897/breaking-out-... so this seems like it could potentially be a good fit.
My next project is working up a programmable drawing program and I'm still trying to find the perfect language and GUI toolkit....
Here is a screen grab of a poor attempt at implementing the old paratrooper game
https://vimeo.com/835347764