3 ms·
No erlang cannot share memory between cores, it has to copy it.
by bullen 3y ago
No erlang cannot share memory between cores, it has to copy it.
- klibertp 3y agoI think binaries are refcounted and shared in Erlang? I'm not sure if this happens between schedulers/cores, though. They're also obviously immutable, so might not be what you mean by "sharing memory atomically". Other than Erlang, Pony[1] might be an interesting choice. It allows sharing memory, even mutable memory, but it tracks the sharing in the type system. It's been a long time since I looked at it, and it definitely had a bunch of rough edges, but I really liked where the things were going. I hope it got even better since. [1] https://www.ponylang.io/ https://www.ponylang.io/
- bullen 3y agoFor me C (1970) and Java (1990) are the only options for eternity. I use some C++ features and dabble in js when I make HTML but really since Applet and Flash has been removed the browser is just a bloated waste of time. Make your apps fast by allowing them to share memory without latency! I have also coded Perl, VisualBasic, php and C# and I'm pretty sure this is it. What we need now are VMs that can take any bytecode/instructionset and translate it to all others. For true crossplatform development. But that requires us to dump dynamic allocation. Arrays of 64 byte structures FTW!
- ReactiveJelly 3y ago> VMs that can take any bytecode/instructionset and translate it to all others You're gonna love this: https://en.wikipedia.org/wiki/WebAssembly https://en.wikipedia.org/wiki/WebAssembly
- bullen 3y agoI would if anything worked. Still waiting for a Windows release of this: https://github.com/bytecodealliance/wasm-micro-runtime https://github.com/bytecodealliance/wasm-micro-runtime Don't hold you breath. Also needs Risc-V and ARM 32/64.