I've been slowly reading “Mathematical Logic through Python” by Yannai A. Gonczarowski and Noam Nisan. While following the exercises in the book, I'm futzing with an experimental Symbolic Logic language I call Sapphire. It's fun-and-games: exploring Sudoku puzzles and variants as large SAT problems. And next up will be recreational problems in Number Theory.
I'm also working on a Debian GNU/Linux based “Neo-Retro Computing Environment”, Royal, which will host Sapphire and I'll use it to explore my interests in Recreational Mathematics further. It should play well with the “old-school” roots of the Raspberry Pi HW and my goal is for it to run well on a Pi Zero2 (the Pi Zero W is overburdened by my Python prototypes, but I tend toward bit fiddling which should be faster when converted to C).
While my target is the Pi running 64 bit Raspberry Pi OS Lite, my primary development machine is an AMD-powered laptop running Debian. As a little endian 64 bit machine, I'll keep it running there even if I upgrade my primary machine to a different architecture.
I'm also testing on StarFive's VisionFive2 RISC-V SBC; it's underpowered at a similar price point to the RPi5 with a peak CPU clock rate of 1.5Ghz compared to the RPi5's 2.4Ghz. The RISC-V core IP ”scene” is still immature with fewer silicon iterations to learn from - give it time. Milk-V Mars and the OrangePi RV have the same JH7110 SoC from StarFive, but the Beagle-V Ahead may perform a little better, with a peak clock of 2GHz and the IMG BXM GPU may outperform the IMG BXE GPU in the StarFive SoC.
SDL makes creating an OpenGL or Vulkan context straightforward, giving access to the GPU. It also provides input events from devices. It can run can run on RPi OS “with desktop” as well as RPi OS “Lite” (interacting with a Wayland “compositor” or the DRI - Direct Rendering Infrascture - and reading input events via evdev).
Checking out the portability promise of Emscripten is what led me to SDL. For my own use, Debian GNU/Linux is ideal, but if this project gets to a state where people would be interested in using it, an Emscripten port might be the way to go.
While the All-in-One RPi 400 and RPi 500) intentionally evoke memories of early home computers like the Apple II+ I grew up with, I'm imagining a different configuration combining an RGB keyboard and a small touchscreen attached to the Pi, below the keyboard in place of a touchpad. I haven't put it together yet, but I've got the parts.