3 ms·
Very cool. Most of these Unix clones are usually written in C. This one is written in a new programming language.
by anta40 2y ago
Very cool. Most of these Unix clones are usually written in C.
This one is written in a new programming language.
- balder1991 2y agoI only read part of the FAQ. I find the desire to keep the complexity low by limiting the compiler lines of code and not using LLVM interesting, but I wonder how practical it is. The FAQ admits that because of this, it generates slower code. So it shifts the complexity to the software codebase, by telling the users to “use assembly where needed”. Seems a bit like Python’s philosophy of not introducing too much optimizations to prevent the runtime complexity from spiraling out of control.
- PhilipRoman 2y agoI doubt it is a real problem for anything other than number crunching. I like to use tcc during development (which does very little, if any optimizations) to speed up compilation and I never noticed any regressions in performance, even for GUI software. Throughput just isn't that big of a deal for most applications (although latency and resource usage is, but that's not affected by choice of compiler).
- fuzztester 2y agoYou are using C (with TCC) for GUI apps? with what GUI framework or library?
- PhilipRoman 2y agoI used SDL2. Not actively working on that project anymore, but I picked it due to requirements - fast startup, low latency, low memory usage, portability anywhere (linux on multiple distros, CPU architectures and multiple rendering backends, any Windows version from XP to 11...). C fits that very well IMO and I don't regret choosing it.
- fuzztester 2y agoThanks for the info. Seems like a good decision.
- cardanome 2y agoFrom what I heard LLVM seems to be not very great at keeping backwards compatibility and makes no guarantees that the IR (intermediate representation) stays the same. So I imagine it can be frustrating to have a moving target. Plus it is a heavy dependency which means projects like writing a self-hosting OS in a month are much less realistic to achieve when your compiler relies on LLVM. And not the least, the code generation is pretty slow. If your languages cares greatly about compile speed, which it should, this is a bummer. So yeah, for many projects avoiding LLVM might be a good idea.
- pjmlp 2y agoThere were UNIX written in Ada and Pascal, naturally C has a special relationship.
- trollerator23 2y agoReally??
- JPLeRouzic 2y agoIn France, in the 1980" there was a Unix clone written in Pascal by the CNET (the R&D of the incumbent phone operator). The CPU was a M68K and the hard disk had 20Mbytes (if I recall correctly). I don't remember the name of the beast.
- pjmlp 2y agoYep, https://en.m.wikipedia.org/wiki/Apollo_Computer https://en.m.wikipedia.org/wiki/Apollo_Computer https://marte.unican.es/ https://marte.unican.es/
- lproven 2y agoAnd TUNIS, in Concurrent Euclid. https://en.wikipedia.org/wiki/TUNIS https://en.wikipedia.org/wiki/TUNIS https://archive.org/details/concurrenteuclid00holt https://archive.org/details/concurrenteuclid00holt https://en.wikipedia.org/wiki/Concurrent_Euclid https://en.wikipedia.org/wiki/Concurrent_Euclid https://en.wikipedia.org/wiki/Euclid_(programming_language) https://en.wikipedia.org/wiki/Euclid_(programming_language)
- trollerator23 2y agoVery cool! I miss Pascal.