10 ms·
> A change in paradigm is necessary. Freestanding C, not hosted C. This completely gets rid of the libc and is a surprisingly clean language. Linux only, becaus
by pg83 1mo ago
> A change in paradigm is necessary. Freestanding C, not hosted C. This completely gets rid of the libc and is a surprisingly clean language. Linux only, because it's the only kernel with a stable binary interface. Every other OS forces a C runtime.
Great choice for small programs, but what if I want hardware accelerated 3d?
- Splizard 1mo agoexactly
- matheusmoreira 1mo agoYeah, that's the annoying part. Been wondering about this for years, and graphics support was among the first issues raised on the lone lisp GitHub repository. At this point I've even started exploring the mesa codebase, made some patches but didn't submit them yet due to the AI stigma. With Linux system calls alone it should be possible to set up kernel mode setting without depending on any toolkit at all. This should be enough to get a framebuffer for software rendering. For hardware acceleration though, one must give this graphics context to an OpenGL ES implementation. That's where it gets ugly. There is no way to divorce that from the libc short of literally rewriting it. Maybe Vulkan will enable it? I can't say for sure at my current knowledge level.
- pjmlp 1mo agoVulkan is designed to only load core statically and the whole extension spaghetti dynamically, using driver entry points. https://vulkan.lunarg.com/doc/view/latest/mac/LoaderInterfaceArchitecture.html https://vulkan.lunarg.com/doc/view/latest/mac/LoaderInterfac...
- inigyou 1mo agoModern 3D APIs are built around passing around a few buffers per frame and long command queues. Should be doable with IPC.