
@greg this test has started timing out again: http://drdr.racket-lang.org/58113/cs/racket/share/pkgs/http/http/request.rkt

Unfortunately it passes on my machine. Any ideas what might be going wrong?

Writing video games in a pure functional style is verrry weird….. because it feels sort of natural that you must mutate x & y positions over time opposed to creating a new copy that has the updated values considering the high frequency games run at… not to mention since games can get very performance constrained due to needing to run at 30–60FPS, making copies is less perf efficient opposed to mutating. Has anyone made a commercial game with racket? If so I’m curious if you did it in functional style or did you just use set! everywhere

For a scribble file (using scribble/base), is it possible to add a dom element for the exported html?

I think you are looking for https://docs.racket-lang.org/scribble/core.html#%28mod-path._scribble%2Fhtml-properties%29

I don’t think people have developed a commercial game in Racket.

Using side effects for mutating sprites’ x & y coordinates and other stuff seems very reasonable to me

It looks like I need a dom-addition
of sorts

Interestingly enough, the rendering pipeline for GPUs is actually following this no-copy style: you cannot mutate anything on a GPU, you create a new command buffer with a copy of the data (usually referencing larger, read only structures such as textures) and add these commands to a command queue for execution.

What is more interesting is that the APIs themselves such as DirectX and OpenGL are actually hiding this model behind an apparently mutable interface.

Even on a CPU side, if you need to model complex terrain deformation, such as when modeling digging, it is faster to create an updated copy of the data than updating it in place. I may or may not have a lot of experience with this :grinning:
