3 ms·
what piqued my interest: nerves boots with only barebones linux and the otp/beam vm, effectively turning elixir into the embedded os [0] [0] https://wiki.alope
by hazn 2y ago
what piqued my interest: nerves boots with only barebones linux and the otp/beam vm, effectively turning elixir into the embedded os [0]
[0] https://wiki.alopex.li/NervesNotes https://wiki.alopex.li/NervesNotes
- ghayes 2y agoI guess I’ve been a bit disappointed Nerves doesn’t run on microcontrollers, though, such as an Arduino or Raspberry Pi Pico. Basically, once you have Linux, you can run nearly anything already.
- lawik 2y agoIt was never intended to. The BEAM is not a good fit for that environment. I find it a bit bewildering that people are disappointed about that but I think it comes from having had the difference between microcontroller and embedded linux device clear to me from the early Pi and Arduino days. You can look at AtomVM for a way to run Erlang and Elixir on an MCU. It just isn't Nerves. Nerves is a Linux :)
- MarcusE1W 2y agoThere is the AtomVM, a (mini)BEAM for microcontrollers https://www.atomvm.net/ https://www.atomvm.net/ There is also integration for Elixir and AtomVM.
- MisterTea 2y agohttps://www.grisp.org/ https://www.grisp.org/
- hlieberman 2y agoThere's a maniac/genius who made the BEAM VM boot directly on some hardware through his GRiSP project: https://www.grisp.org/ https://www.grisp.org/ Hard real-time Erlang. It's siiiick.
- frou_dh 2y agoI've wondered about something related and the origin of Erlang in the 80s/90s. Back then when it was running on the telephone switches etc, was it running bare metal? Or did those switches run an OS like some form of Unix or something else?
- actionfromafar 2y agoI'm pretty sure it ran on VRTX.
- jeffreygoesto 2y agoHe automated some Rexroth production with it. https://www.stritzinger.com https://www.stritzinger.com
- eproxus 2y agoNot to downplay it or anything, but it is "just" the normal Erlang BEAM VM compiled together with the real time OS RTEMS (which basically implements all POSIX things that the VM needs). Of course, getting it to work needed a lot of research and and experimentation, but the end result is surprisingly simple for what it is. The maniac/genius part is coming up with the idea in the first place and actually pushing through until it works, not many people have the stamina and focus for that. Source: I was part of the original core team, and I developed the first version of the Erlang support library and runtime.