3 ms·
Im am always fascinated by how a single person can build a language runtime. That too for language like JavaScript where large number of features are introduces
by akmittal 5y ago
Im am always fascinated by how a single person can build a language runtime. That too for language like JavaScript where large number of features are introduces on regular basis.
https://github.com/bellard/quickjs/graphs/contributors https://github.com/bellard/quickjs/graphs/contributors
- lifthrasiir 5y agoJS is relatively easy to implement if you don't care about performance. (QuickJS does care about preformance though, which makes it more amazing.) The apparent complexity of ECMAScript specification mostly comes from lots of pseudo code written in prose, which leaves no room for different interpretation and actually makes implementor's job easier. Newer JS features also rarely introduce new concepts and can be mostly desugared into the core language, pretty isomorphic to ES5 plus some library bits like Proxy---which means you can start with ES5 (an even smaller language) and build newer features on top of that.
- jart 5y agoWould you call running a marathon easy? Anyone can run. But could you run for 26.2 miles without stopping? The ECMAScript 12 spec is 44,000 lines and it contains 269,000 words. It's enormous. It's the same way with qemu. You have to spend months doing an enormous number of things to build something like that before it's able to run even the simplest most everyday programs. Bellard is legendary for his stamina. Not many programmers can match it. Only one I can think of would probably be the SerenityOS guy.
- lifthrasiir 5y agoI like your marathon analogy. Not everyone can or does run a marathon, but there are still lots of marathoners. You do need stamina, but you don't need an inhuman level of stamina like Bellard's. If you don't stress yourself and pick your enemy wisely (like, start with ES5) it is very much doable.
- saghul 5y agoNote that the GH repo is just a mirror, development happens elsewhere. From the copyright notes there is another main developer involved, Charlie Gordon.
- selcuka 5y ago> Im am always fascinated by how a single person can build a language runtime. In this case it is not that surprising as the same single person (Fabrice Bellard) also built ffmpeg, qemu, and tiny-c compiler.
- akmittal 5y agoHe got a new fan then, I will consider myself lucky if i can reach just 1% compared to him