Recently, I have been playing around with the Esprit project which is an attempt to run ClojureScript on microcontrollers using the Espruino microcontroller-based JS interpreter. As per Mike's talk here, the real trick is to setup Espruino such that it has enough space to hold cljs.core and all your program code. This ends up at least around 900KB.
Now for those unfamiliar, the ESP32 is configured with a partition table - allocating different sections of memory to the program code, non-volatile storage, the bootloader, etc. These partitions can be arbitrarily resized. Additionally, one can make partitions that don't mean anything to the ESP32, but can yield pointers in the C code that help manage the separate parts of memory.
As modern ESP32s ship with TONS of flash, we want to make the partition that Espruino calls js_code
as large as possible to take full advant