Live data from Hacker News

QuickJS JavaScript Engine

bellard.org

231–240 of 279 posts

Re: QuickJS JavaScript Engine

#231

Earlier quoted context omitted.

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.

Yes that's true in general, but ... I hate to be the party pooper here, but .... What makes this JS implementation deserve the name "Quick"? I noticed it doesn't appear to do JIT compilation or any of the fancy optimisations V8 does. So whilst it may start up quickly, and may interpret quickly, it won't actually execute JS quickly relative to V8, unless I missed something huge in the linked web page. I got the sense…

QuickJS also compiles to machine code.

Re: QuickJS JavaScript Engine

#232

Earlier quoted context omitted.

Ok, so this comment is so cliche it's getting hard to ignore. Yes, JavaScript is abused but the problem is that people by large enjoy these types of site. I've never heard my parents or non-developer friends complain about a site using too much JavaScript, but if I show them Hacker News or old.reddit.com, they'll complain it looks ugly and hard to read/use and really do lose interest in it immediately. Anyway, I fail…

> I've never heard my parents or non-developer friends complain about a site using too much JavaScript How can they? They don't know what it is. They are complaining about it a lot of times you don't hear about it; every time they have to fill an abomination of a form, every time they hard-close their browser because it's stuck, every time they just wait for a page to load, every time 'something' happens they did not…

Everyone is focused on 'process' (CI, deployment, many irrelevant unit tests; a lot of busy work basically) and 'beautiful code' (style, linting, things a beautifier can do for you automatically) and ego (github stars), but robustness or longevity is just not really a focus of many.

You just summed up the entire web development ecosystem in general. There's also the trendchasing and continual churn of breaking things that used to work just fine, replacing them with even more inefficient and complex solutions. In the area of the software industry that I work in, doing things that way would quickly make customers disappear.

The "inelegance" or otherwise "lack of purity" of JS doesn't really bother me; a lot of languages have parts like that, and I've written some JS myself.

Re: QuickJS JavaScript Engine

#235
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/

Rob Pike and Ken Thompson: UNIX, Plan9, UTF-8, Golang.

Rob Pike was born in 1956 so he didn't have anything to do with the original Unix. Maybe you're thinking of Dennis Ritchie?

Pike's account of how UTF-8 was invented is a fun read: https://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt

Re: QuickJS JavaScript Engine

#236

Can not pass tests from armv8l, the site seems no bug report links. is anyone know how to let bellard know this ? make -j8 test ./qjs tests/test_closure.js ./qjs tests/test_op.js ./qjs tests/test_builtin.js Error: assertion failed: got |2e+1|, expected |3e+1| at assert (tests/test_builtin.js:17) at test_number (tests/test_builtin.js:307) at (tests/test_builtin.js:589)

other error find from android termux:

InternalError: out of memory in regexp execution at test_regexp (tests/test_builtin.js:427) at (tests/test_builtin.js:594)

Re: QuickJS JavaScript Engine

#237
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/

> 1. Are there anyone on HN knows him in real life? Do you ask this to know if he's a real guy or an AI or a pseudo for group of persons like https://en.wikipedia.org/wiki/Nicolas_Bourbaki ? I know Fabrice a little. He's definitely real, smart and humble. Visited him at his workplace about ten years ago when he worked at Netgem. We also have a common friend we visit with spouse and kids, where we discover and discuss…

I've met him as well, a few times, but do not know him personally like you.

He is definitely very humble and a very good listener. When he told us about this side project he was working on about a year ago, he made it seem like it wasn't a big deal, just a small js engine, would never compete with v8. After a few questions, it was clear that the goal was to implement the latest ECMAScript spec, with all the goodies. It will never be in the v8 league, but it's on a league of its own.

Re: QuickJS JavaScript Engine

#238

Earlier quoted context omitted.

Rob Pike and Ken Thompson: UNIX, Plan9, UTF-8, Golang.

Rob Pike was born in 1956 so he didn't have anything to do with the original Unix. Maybe you're thinking of Dennis Ritchie? Pike's account of how UTF-8 was invented is a fun read: https://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt

Wikipedia says "was a member of the Unix team". Not completely sure what that implies.

Re: QuickJS JavaScript Engine

#239
post #201

The benchmark scores [1] he gives only stack it up against other embeddable engines. It cuts those to ribbons, but can someone who's familiar with JavaScript performance weigh in on how it competes with the most popular engines like V8 and SpiderMonkey? It would be interesting if this is so fast that you could re-implement Node using QuickJS instead of V8, or even make a WebKit- or Gecko-based browser with QuickJS un…

I have a small, CPU-intensive benchmark which shows the performance of QuickJS to be comparable to other interpreters written in C. It's on par with MicroPython and recent versions of Ruby, and a little faster than CPython and Lua. However, it's still 2-3x slower than the optimized, CPU-specific interpreters used in LuaJIT and V8 (with their JITs disabled), and 20-100x slower than the LuaJIT, V8 and PyPy JIT compiler…

Thanks, those were the numbers I was really interested in.

I figured there's no way it would be as fast as say V8 who has Google+others working for years to make it as fast as possible.

Not that it's a bad thing! They just have different purposes.

Re: QuickJS JavaScript Engine

#240

How does one keep track of Fabrice Bellard's work? I couldn't find a Twitter profile, GitHub profile, or RSS feed from his website.

https://bellard.org/ https://bellard.org/projects.html He's got over 40 projects in total there, and each one of those is deep --- they would either take a very long time or be impossible for the average programmer. In contrast, many other programmers I've heard claim to have done over a dozen different projects turn out to really be "I glued several libraries together" repeated many times; very much the opposite of…

He has a drive that most people can only dream of.

I have a bunch of projects, drones, 3d printers, computer clusters, a bunch of programs I want to make - I have all the tools, I already own all the things I mentioned.

But I suffer from depression/other stuff, and I haven't touched them in months. Let alone this guy, who is presumably pounding away at his keyboard for hours everyday.

Post reply on HN