Live data from Hacker News

Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

github.com

51–60 of 70 posts

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#51
post #41

Earlier quoted context omitted.

HiPE was done a long time ago, and I don't think it tried to use any particularly sophisticated techniques even at the time. Modern compilation techniques such as powerful escape analysis and partial evaluation may be able to do something new. GraalVM runs Ruby about 10x faster than standard Ruby, for example.

"GraalVM runs Ruby about 10x faster than standard Ruby, for example." Which puts it roughly up against the plateau I observe for dynamically-typed languages across the board, except LuaJIT (which AIUI compromises the dynamicness a bit to get there). Ruby is a great deal more than 10x slower than optimal (which is still roughly C, though keep an eye out on that as languages continue to challenge it). Based on the way…

>> … no slow languages, only slow implementations … dynamic scripting languages…

"Scripting languages are designed for gluing."

https://ieeexplore.ieee.org/document/660187/

"Programming languages are compared against each other as though their designers intended them to be used for the exact same purpose - that just isn't so."

https://benchmarksgame-team.pages.debian.net/benchmarksgame/...

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#52
post #27

Earlier quoted context omitted.

It'd be great to see what a state-of-the-art optimising compiler can do for the performance of Erlang and Elixir.

Given the not-all-that-great improvement of a targeted attempt to speed up Erlang with HiPE, I wouldn't hold your breath for how well a non-targeted approach would go. Unfortunately, Erlang-the-language has several features that seem to be fundamentally slow, in that I've never seen any runtime that goes quickly with them. (A lot of memory copying, for one, even after being as clever as possible with optimizations on…

>> It's just that real engineers need to have clear understandings of the costs and benefits of their tools…

For example, real engineers read the FAQ.

http://erlang.org/faq/introduction.html#idp32118672

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#53
post #9

We barely had FB and Sonar, to just get yet another example of how badly to name projects. http://gluonhq.com/

Gluon is also a language built on Rust: https://github.com/gluon-lang/gluon

Which I heard of for the first time only weeks ago and thought this was.

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#54
post #33
post #26

Greetings! Author is here. We have no idea how this blog draft escaped into HN, but here it is a few years too late. The Gluon project https://github.com/kvakvs/gluonvm1 isn't live anymore, it was using C++ and it was stopped a couple years ago giving way to other experiments ( https://github.com/kvakvs/E4VM ) and finally to ErlangRT mentioned below https://github.com/kvakvs/ErlangRT My talk with me explaining the wh…

It's great to hear interest in this area - the more places I can run Erlang/Elixir, the more likely I am to use it even in the places it can traditionally run (it's a more useful language to me if I can use the same codebase everywhere). If you are looking to make an embedded focused VM, obviously ARM is the most useful target to run on.

Is there a platform the BEAM doesn't currently target? I'm not aware of anything that isn't completely esoteric... You can run it on ARM currently.

BEAM has been in use for over 20 years in telephone systems running on insanely old and bizarre hardware. Is there a platform you have in mind besides ARM?

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#55
post #28

Earlier quoted context omitted.

The technology for the art is called Wacom Bamboo and I was overdrawing the Erlang logo with some hand scribbles in Inkscape. In fact same technology seems to be used for the original LYSE book and I was using it to translate text in images in Russian translation for the LYSE book.

For Learn You Some Erlang, I used hand-made drawings that I would scan, and then trace over using either photoshop (initially) and then Illustrator (when I knew the book would go to print).

Is that de same technique as in learn you a haskell?

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#58
post #44

Earlier quoted context omitted.

were you ever able to feed in size savings back to Ericsson? Especially since OTP got relicensed?

This would mean huge refactoring, which i'm sure they'd never accept. The only way to go was to start something my own or fork. OTP team prefers changes which do not degrade performance, as I'm essentially optimising for size, while they optimise for speed and compatibility.

I'm curious whether you had in mind any kind of benchmarks (which have not been implemented) for checking size and/or performance differences...

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#59
post #33

Earlier quoted context omitted.

It's great to hear interest in this area - the more places I can run Erlang/Elixir, the more likely I am to use it even in the places it can traditionally run (it's a more useful language to me if I can use the same codebase everywhere). If you are looking to make an embedded focused VM, obviously ARM is the most useful target to run on.

Is there a platform the BEAM doesn't currently target? I'm not aware of anything that isn't completely esoteric... You can run it on ARM currently. BEAM has been in use for over 20 years in telephone systems running on insanely old and bizarre hardware. Is there a platform you have in mind besides ARM?

I could be wrong, but I don't think BEAM really runs on microcontrollers. Erlang might be a good environment on the same sorts of micros (32 bit, dozens of KB of ram) MicroPython targets.

Re: Gluon – A configurable and small virtual machine which runs Erlang BEAM bytecode

#60
post #26

Greetings! Author is here. We have no idea how this blog draft escaped into HN, but here it is a few years too late. The Gluon project https://github.com/kvakvs/gluonvm1 isn't live anymore, it was using C++ and it was stopped a couple years ago giving way to other experiments ( https://github.com/kvakvs/E4VM ) and finally to ErlangRT mentioned below https://github.com/kvakvs/ErlangRT My talk with me explaining the wh…

Why Erlang in Rust? Ever thought about a no-std Actix clone?
Post reply on HN