logoalt Hacker News

josevalimyesterday at 5:12 PM2 repliesview on HN

There are multiple people working on the JIT within the last 5-6 years. The WhatsApp folks also contribute meaningfully.

I suspect once the Erlang/OTP team squeezes all performance in the JIT, they will look into optimizing across modules, which will probably open up many new possibilities, but it requires rethinking some runtime primitives.


Replies

ashton314yesterday at 8:29 PM

A few years ago, I was working on an interpreter implemented in elixir for a domain specific language. It was a pretty basic metacircular interpreter. It relied heavily on function signature dispatch. When I tried breaking up the massive “interpret” function across modules, performance tanked. I got it all back by using some macro shenanigans, but understandably the team did not like this.

Knowing what I know now, I would’ve tried to push for a threaded interpreter to get rid of the runtime overhead of dispatching altogether. I don’t know if they’ve changed the architecture of that module much since I left :-)

alberthyesterday at 6:07 PM

Hi Jose

You’re an inspiration for many. Thank you.

I’m curious to know what your top 3 hopes for BEAM itself are for the coming years (in any area that you think would make it better).

show 1 reply