Live data from Hacker News

QuickJS JavaScript Engine

bellard.org

181–190 of 279 posts

Re: QuickJS JavaScript Engine

#181

Wow. The core is a single 1.5MB file that's very readable, it supports nearly all of the latest standard, and Bellard even added his own extensions on top of that. It has compile-time options for either a NaN-boxing or traditional tagged union object representation, so he didn't just go for a single minimal implementation (unlike e.g. OTCC) but even had the time and energy to explore a bit. I like the fact that it's…

>> Despite my general distaste for JS largely due to websites tending to abuse it more than anything Why would you have a distaste for JavaScript based on how others use it? JavaScript has evolved into an extremely powerful and flexible language which is taking many great lessons from other languages. Sure its not perfect but its a real workhorse. EDIT: I know you're not meant to ask why the downvotes, but I do wonde…

> Why would you have a distaste for JavaScript based on how others use it?

Languages don't exist in a vacuum. The way libraries are written and the way coworkers write code has a huge effect on us.

> proven over time its flexibility and adaptability to become probably the single most used language

Its usage has nothing to do with its quality. The web has a low barrier to entry, and well web devs have to use JS because browsers handcuff us to it.

If JS were so great, we wouldn't have increasing TypeScript adoption or a million compile-to-JS languages.

I've been writing JS for 20 years. I use bleeding-edge features, TypeScript, and Babel. I've done front and back end. It still sucks (which is sometimes the fault of V8, but not always).

Re: QuickJS JavaScript Engine

#182

Wow. The core is a single 1.5MB file that's very readable, it supports nearly all of the latest standard, and Bellard even added his own extensions on top of that. It has compile-time options for either a NaN-boxing or traditional tagged union object representation, so he didn't just go for a single minimal implementation (unlike e.g. OTCC) but even had the time and energy to explore a bit. I like the fact that it's…

>> Despite my general distaste for JS largely due to websites tending to abuse it more than anything Why would you have a distaste for JavaScript based on how others use it? JavaScript has evolved into an extremely powerful and flexible language which is taking many great lessons from other languages. Sure its not perfect but its a real workhorse. EDIT: I know you're not meant to ask why the downvotes, but I do wonde…

The amount of JS I come across on sites that is purely superfluous and serves to irritate, manipulate, or simply waste resources far outnumbers the actually useful, efficient, and purposeful use of it in webapps. I'm talking about things like loading several MB of it with half a dozen frameworks and libraries, just to render a few KB of text. Don't even get me started on popups/popunders/popins/clickjacking/scrolljacking/historyjacking and all that other crap that JS gets used for far more often.

Observe that Bellard's own site, despite having a few JS-based projects and demos, and now himself being the author of a JS engine, has not succumbed to the "JS everything!!!1" fad.

(FYI I didn't downvote.)

Re: QuickJS JavaScript Engine

#183
post #174
post #96

Earlier quoted context omitted.

I have two question in my mind. 1. Are there anyone on HN knows him in real life? 2. Does anyone have other people in their mind who is in the same league as this man? Mike Pall's LuaJIT sort of make him at this level but that is only one thing. Fabrice create things that everyone are using it one way or another, and if it wasn't HEVC patents mess we would have his bpg [1] replacing jpeg. [1] https://bellard.org/bpg/

Linus Torvalds? He created Linux and git. Arguably the two most successful open source projects ever.

Linus has demonstrated incredible long-term effectiveness as a software developer, both creating and then shepherding two of the most important pieces of software of the last 50 years. But he seems qualitatively different than Ballard.

I'm trying to put into words what the difference feels like. Git and linux demonstrate, for Linus, great intelligence but not genius, the way Ballard's works do. And on Linus' side, git and linux demonstrate leadership, pragmatism, and a tremendous understanding of how to actually drive a large project forward over time, which Ballard's works don't.

Re: QuickJS JavaScript Engine

#185

Wow. The core is a single 1.5MB file that's very readable, it supports nearly all of the latest standard, and Bellard even added his own extensions on top of that. It has compile-time options for either a NaN-boxing or traditional tagged union object representation, so he didn't just go for a single minimal implementation (unlike e.g. OTCC) but even had the time and energy to explore a bit. I like the fact that it's…

>> Despite my general distaste for JS largely due to websites tending to abuse it more than anything Why would you have a distaste for JavaScript based on how others use it? JavaScript has evolved into an extremely powerful and flexible language which is taking many great lessons from other languages. Sure its not perfect but its a real workhorse. EDIT: I know you're not meant to ask why the downvotes, but I do wonde…

> I know you're not meant to ask why the downvotes, but I do wonder in this case

I'm not a JavaScript hater - these days it's my main language - but your comment was pedantic and interpreted his words uncharitably. By "distaste for JS" he clearly just meant vague negative emotions surrounding it, not that he thinks it's an invalid language. He even specifically says his distaste is circumstantial.

Re: QuickJS JavaScript Engine

#186
post #168
post #25

Is there anything that Fabrice can't do? I mean, FFMpeg is almost a PhD thesis in and of itself, and he still manages to find time to make TinyC, QEMU, and now this. To say I'm jealous of his skills would be an understatement.

One thing to note... he doesn't bother himself with pretty websites, community building of any kind, splash pages... It's just plain html. Not even github as far as I could tell. He just works on the tech and puts it out there with benchmarks as proof of his claims.

His humility (and general lack of "marketing wank" on his site) is certainly another aspect I admire. There's far too much "look at my absolutely amazing $trivial_app with best-in-class X and high-quality Y and gorgeous Z and ..." out there, that just seeing the equivalent of "This is a JS engine I wrote." and a simple enumeration of features without all that embellishment feels very refreshing.

Re: QuickJS JavaScript Engine

#187
post #165
post #133

Earlier quoted context omitted.

" Don't be snarky. " " Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something. " https://news.ycombinator.com/newsguidelines.html

It wasn’t sarcasm. I was being sincere.

I believe you, but a comment like that is going to pattern-match to the internet default, which is snark, in nearly every reader's mind.

Re: QuickJS JavaScript Engine

#188
post #96

Earlier quoted context omitted.

I have two question in my mind. 1. Are there anyone on HN knows him in real life? 2. Does anyone have other people in their mind who is in the same league as this man? Mike Pall's LuaJIT sort of make him at this level but that is only one thing. Fabrice create things that everyone are using it one way or another, and if it wasn't HEVC patents mess we would have his bpg [1] replacing jpeg. [1] https://bellard.org/bpg/

Dan Bernstein. Researched curve 25519 and provided reference implementations of x25519 & ed25519. Invented chacha20, such that it never branches on user secrets to minimize side channel leakage. Along with poly1305, these form the foundation of almost all “modern crypto” from Signal to TLS v1.3. He wrote qmail as a superior MTA to the incumbent Sendmail. He’s even beat the US government in court.

djb also wrote daemontools, ucspi-tcp, dnscache, djbfft, kicked off the field of post-quantum cryptography (pqcrypto), wrote the spec for `redo`, and came up with `find -print0 | xargs -0`.

Definitely a legend!

Re: QuickJS JavaScript Engine

#189
post #96

Earlier quoted context omitted.

I have two question in my mind. 1. Are there anyone on HN knows him in real life? 2. Does anyone have other people in their mind who is in the same league as this man? Mike Pall's LuaJIT sort of make him at this level but that is only one thing. Fabrice create things that everyone are using it one way or another, and if it wasn't HEVC patents mess we would have his bpg [1] replacing jpeg. [1] https://bellard.org/bpg/

John Carmack is the immediate one that comes to mind.

Truly. JC literally largely made gaming what it is today. I remember reading that virtually every game users code he has written, because almost every game engine uses his code in some form.
Post reply on HN