HOLY SHIT: A New Hope (TW: Rust)

HolyJit: A New Hope
tl;dr: We believe there is a safer and easier way of writing a Jit.

Current State
Today, all browsers’ Jits share a similar design. This design makes extending the language or improving its performance time-consuming and complex, especially while avoiding security issues.
For instance, at the time of this writing, our Jit relies upon ~15000 lines of carefully crafted, hand-written assembly code (~36000 in Chromium’s v8). The Jit directory represents 5% of all the C++ code of Firefox, and contains 3 of the top 20 largest files of Firefox, all written by hand.
Interestingly, these files all contain code that is derived by hand from the Interpreter and a limited set of built-in functions of the JavaScript engine. But why do it by hand, when we could automatize the process, saving time and risk? HolyJit is exploring this possibility.

Introducing HolyJit (prototype)
This week, during the JS Team meetup, we have demonstrated the first prototype of a Rust meta-Jit compiler, named HolyJit. If our experiment proves successful, we believe that employing a strategy based on HolyJit will let us avoid many potential bugs and let us concentrate on strategic issues. This means more time to implement JavaScript features quickly and further improve the speed of our Jit.

blog.mozilla.org/javascript/2017/10/20/holyjit-a-new-hope/
github.com/nbp/holyjit

discuss

Other urls found in this thread:

docs.adacore.com/gnat_rm-docs/html/gnat_rm/gnat_rm/the_implementation_of_standard_i_o.html
twitter.com/NSFWRedditImage

ew

i put a trigger warning right in the title just for faggots like you. why do you feel the need to reply to the thread if you have nothing to say?
at least sage this shit

Sweet. Rust's developers may be shot through with SJW weasels that would be the first up against the wall in case of civil war, but it does seem to be capable of honestly improving developer productivity and code safety, which is huge for a native compiled non-GC language.

kill yourself sjwnigger

rust rust rust poop

...

Is this it?
Is this the year of Rust?
Is this the timeline of Rust?

OY VEYYY
someone create an issue and complain about this choice of words

You are correct. Why haven't you already have done this?
You are correct again. But why in the actual fuck are you using this to improve the unredeemable trash that is pajeetscript? With javascript you NEED undefined functions and functions that have memory overflowed by default. Otherwise you break web backwards compatibility. So unless you are literally disabling memory safety in rust defeating the whole purpose of why you wanted to use it in the first place then you can't have a web compatible javascript interpreter. If you are going to even bother doing this, then port the seamonkey interpreter and have a more solid foundation
>our Jit relies upon ~15000 lines of carefully crafted, hand-written assembly code (~36000 in (((Chromium)))’s v8).
>(((our)))
Soros funded giga kikes get out.

I know you're just shitposting, but if anyone wants to raise an issue make a suggestion that can also be triggering, then someone else raises another issue with another triggering suggestion, and so on.

AOT here, JIT is shit.

...

I'm sick of rust threads it's bean more than a year and I wish more than ever that it would never had bean created.
Also the winning about JS can easily be solved by not using any JS.
Remove JS and you solve 99% of the problems of the web.

Where are my double linked lists?

i will never stop making rust threads :^^^^^^^^^^^^^)


right here: std::collections::LinkedList

I fucking love rust

Kill yourself.

...

...

Actually, it's for JS. It's written in Rust.

Right wing trigger warnings? Sneaky schlomo.

That's probably the best gif you could have chosen for reasons you won't understand here

Rust can still be stopped.

We just need to get some big name to declare 2018 "The Year of Rust on the Desktop"

It's ok user, we've got Mozilla on the case; everything they touch turns to absolute shit. As for the Rustroach infestation here, spraying them with Ada helps.

quick Ada question: how do you use buffered output?

No one has actually ever used Ada.

If you're asking whether the standard Ada library has buffered output, then no, you have to define it yourself. Fortunately buffers are trivial shit.

That's a weird graph to have with that answer, but OK: when I looked around I saw hints of "oh gnat has a switch" or such, so I kept looking.

How does a huge pile of corporates and government generate a massive language spec yet somehow not even handle simple "Hello, World!" buffering?

Meh, I switch out Ada-related pics from time to time, and it's kinda hard to find a pic that's both about Ada and about I/O buffering.

Have some documentation:
docs.adacore.com/gnat_rm-docs/html/gnat_rm/gnat_rm/the_implementation_of_standard_i_o.html


The spec is excessively detailed and precise, as it should be, but massive? Nah. There are a couple of things that probably should be in the standard library that aren't, like bignums.

The spec is a thousand pages long. C++17 is around 1300 without the index and is considered to be impossibly bloated.

I use it at work

Are you one of the many embedded devs that frequent Holla Forums?
We sure have a lot of those.

The Ada standard also covers a lot more than C++ in a more detailed, consistent, and saner way. For further comparison, consider that the C11 standard is about 700 pages and the Common Lisp standard is about 1100 pages.

Sorry, Javag, but the FP circlejerking board is on halfchan.

Problem with this graph is the tools have to be done by a developer, so really you've achieved nothing.

Not really, it is for simulation in defense

...