Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
lua
The Lua repo, as seen by the Lua team. Mirrored irregularly. Please DO NOT send pull requests. Send any issue to the Lua mailing list https://www.lua.org/lua-l.html (by ahgamut)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Cosmopolitan Libc author here. When I saw this article earlier today, it put a big smile on my face, because I would have thought there'd be so many more issues than there turned out to be! We've got a GitHub issue tracking progress too: https://github.com/jart/cosmopolitan/issues/61
Depends on what you mean by “using”. It is conceivably possible to compile a webassembly interpreter like wac[1] with cosmopolitan, which would then run on all OSes and bare metal, yes.
Yes! Wasm3 is the fastest WebAssembly interpreter. They recently adopted Cosmopolitan Libc and became the most universal one too. Check out the 150kb APE binary they've got on their release page. https://github.com/wasm3/wasm3/releases/tag/v0.4.8
I am just trying to learn myself so take this with a grain of salt but I have found the [github of Antirez](https://github.com/antirez) - the author of Redis - to be an amazing resource. The code is incredibly well documented and to my eyes pretty well written. A good place to start I think is [Kilo](https://github.com/antirez/kilo/blob/master/kilo.c) - a 1000 line text editor with no dependencies.
You can compile it yourself if you like. I created a fork of the Lua Github mirror and made the necessary changes to compile with Cosmopolitan:
> What I wouldn't give for a liblinux, similar to NTDLL.
Hey I actually tried to make such a thing.
https://github.com/matheusmoreira/liblinux
It provides access to Linux system calls and process start up code that gets all the arguments, environment and auxiliary values. I have several examples of applications written in 100% freestanding C with no dependencies except this library.
It's a bit too low level compared to the dynamic loading library but I actually planned to make my own ld-liblinux eventually. I stopped working on it because I found better solution for system calls on the Linux kernel repository:
https://github.com/torvalds/linux/blob/master/tools/include/...
You think liblinux could have a future?