Live data from Hacker News

HolyJit: A New Hope

blog.mozilla.org

181–190 of 219 posts

Re: HolyJit: A New Hope

#181

For those wondering, it's a specializer, applied to an interpreter, to specialize the interpreter into a jit. This is a pretty well explored technique, it's rarely done these days because historically, people could not get good enough performance. (I am not trying to knock them, just put it in context) For more context on how you'd do something like this, read this: https://en.wikipedia.org/wiki/Partial_evaluation#Fu…

> people could not get good enough performance

PyPy and Graal show good performance. The can be considered special cases of partial evaluation, where the first Futamura project works. They are not generic enough for the second and third projections, though. They even require some help (e.g. annotations) for the first.

Re: HolyJit: A New Hope

#182
post #103
post #85

Earlier quoted context omitted.

In class there are at least 30 out of 40 people using Firefox on Ubuntu with no such issues. On my laptop I use Firefox on Debian with no such issues. Also previously on Windows XP, 7 or 8, both in virtual machines and on hardware, I never had such issues, but that's a while ago so not really applicable anymore. You might want to submit a bug with your specific hardware to see if anyone can identify the cause, becaus…

Do they use tree style tabs though?

I do. Works fine.

Re: HolyJit: A New Hope

#183

Earlier quoted context omitted.

Really tragic case, Terry. Doubtful that TempleOS would exist without his schizophrenia, but everyone would be much better off emotionally if he just took his medication...

> everyone would be much better off emotionally if he just took his medication You say that as if the schizophrenic person, someone who lives in an alternate reality due to psychosis, has any kind of agency over taking his medication. You can only make that choice when you're sane, and even then the drugs aren't perfect and people routinely decide to come off them for some psychotic reason - yes, you can become psych…

>people routinely decide to come off them for some psychotic reason

Sometimes it's for a non-psychotic (but maybe ill-advised) reason like "they made me obese and diabetic."

Re: HolyJit: A New Hope

#184

Earlier quoted context omitted.

Really tragic case, Terry. Doubtful that TempleOS would exist without his schizophrenia, but everyone would be much better off emotionally if he just took his medication...

> everyone would be much better off emotionally if he just took his medication You say that as if the schizophrenic person, someone who lives in an alternate reality due to psychosis, has any kind of agency over taking his medication. You can only make that choice when you're sane, and even then the drugs aren't perfect and people routinely decide to come off them for some psychotic reason - yes, you can become psych…

It’s generally a bad and dangerous idea, especially for someone who is schizophrenic, but antipsychotics can have very serious side effects, and I think it’s painting with a brush that’s a bit too broad to suggest that someone would only stop taking them for “some psychotic reason”. People who take these medications are often facing some very difficult trade offs.

Re: HolyJit: A New Hope

#187
post #151
post #150

Earlier quoted context omitted.

Shipping an entire Java/ruby/python/whatever VM with your code doesn't make much sense (not to mention, wasm doesn't have a good GC story). Then there's the DOM API issue. If you aren't making games or crunching big numbers, wasm isn't for you yet. Even so, let's assume wasm added all those features today. History shows it would still be a decade before you could ship to all your users. That may not matter for fancy…

I don't remeber ARM, MIPS, x86 or x64 having a good GC history either. If WebAssembly is good enough as C and C++ target, it is good enough as any of those processors. As for the potencial of WebAssembly, there are already ongoing efforts to port .NET and Java runtimes to it, and I am looking forward to Adobe porting Flash to it as well. So it will come, WebAssembly + Canvas + WebGL is already quite usable.

Those ISAs are much lower-level than wasm. If you want to keep things secure, you have to restrict things. For example, wasm is going to optimize a lot of things and isn't necessarily going to treat your pointers the way you expect. Good garbage collectors need pretty fine-grained control. LLVM has been the bane of GC creators for the same kinds of reasons.

Re: HolyJit: A New Hope

#188
post #53

"This means more time to implement JavaScript features" - yes, because JavaScript isn't getting enough features fast enough :-p Jokes aside, I love this kind of work from the Mozilla team. This and the bits going into Quantum are really amazing pieces of software engineering in my opinion.

I'm often overwhelmed by the size of the JavaScript language; it's a big language (and I'm coming from mostly working in Perl which is also a very big language...but it is dwarfed by modern JS in terms of TIMTOWTDI and in terms of core language features). But, every time I learn about a new feature, I can't fault them for adding it. It's usually a clear improvement in terms of readability and capability. And, because…

Well, except WebAudio. That standard omits some essential low level audio primitives while featuring an incomplete scatter of high level APIs.

Re: HolyJit: A New Hope

#189
post #188

Earlier quoted context omitted.

I'm often overwhelmed by the size of the JavaScript language; it's a big language (and I'm coming from mostly working in Perl which is also a very big language...but it is dwarfed by modern JS in terms of TIMTOWTDI and in terms of core language features). But, every time I learn about a new feature, I can't fault them for adding it. It's usually a clear improvement in terms of readability and capability. And, because…

Well, except WebAudio. That standard omits some essential low level audio primitives while featuring an incomplete scatter of high level APIs.

Agreed. I've only given it a cursory glance, but I've read several people bemoaning how awful it is. And, I think it's an example of what happens when APIs are built by folks who aren't actually building things with them. Audio always seems to get screwed up by engineers, sometimes for years. Linux had absolutely shitty audio up until...like yesterday.

It's a feedback loop, I think. Almost nobody uses the web for serious audio because the web sucks for serious audio, and thus almost nobody who uses the web for serious audio is working on the standards for web audio. I admire anyone who can make the web platform work at all for anything audio related.

Post reply on HN