| Just to add to the above: It's not a comprehensive answer, but this always was a polyglot project. There're parts written in (and for): - OpenCL interop (e.g. https://thi.ng/raymarchcl, https://thi.ng/simplecl) - GLSL (e.g. https://thi.ng/shader-ast) - C11 (e.g. https://github.com/thi-ng/c-thing, https://thi.ng/synstack) - Zig (https://github.com/thi-ng/zig-thing) - WASM (https://thi.ng/wasm-api) - Forth (https://thi.ng/charlie) There are infrastructure packages to simplify creation of ad hoc DSLs, their transpilation or interpretation, but also interop with WASM (so far mostly geared towards & tested with Zig), for example: - https://thi.ng/parse - https://thi.ng/pointfree - https://thi.ng/lispy - https://thi.ng/sexpr In general, thi.ng projects range from super high level computational design concepts to low-level primitives like memory allocators and memory/data layout management (e.g. https://thi.ng/tinyalloc, https://thi.ng/malloc, https://thi.ng/simd, https://thi.ng/soa) and a huge spectrum of other things in between... |