3 ms·
So... does this work with distributed Erlang or hot code reloading? Because those are the reasons[1], to my knowledge, that statically typed language won't fly.
by rubyn00bie 6y ago
So... does this work with distributed Erlang or hot code reloading? Because those are the reasons[1], to my knowledge, that statically typed language won't fly.
Really stoked to give this a whirl!
[1] I know, and in-case others don't, almost no one (literally) uses hot-code reloading. Still... Instead of killing it, as in the case of Lumen (I think), I'd like to see it become easier/better...
- filmor 6y agoWhere do you derive this "almost no one" from? I use it all the time in production, and I guess quite a few other users use it to fulfill their very high uptime requirements.
- macintux 6y agoI suspect there may be two different features (or degrees of features) here. Hot code reloading is indeed frequently used, but the corresponding ability to upgrade the entire application live (“hot swap”) is less so.
- rkangel 6y agoI don't think so. Hot code reloading is hot code reloading. The parent to your comment is talking about in production so it's the 'real thing'.
- macintux 6y agoI’m not sure what exactly you’re disputing. I would wager that nearly everyone who has run Erlang code in production has upgraded code (edit for precision: a module) live. To engineer the entire application to support an upgrade, and to do all the testing required to make sure it will work correctly, is very resource-intensive, and (lacking real numbers, just from observing the industry working for Basho) I’d wager very few people do so.
- rkangel 6y agoUsers of hot code reloading are probably on the minority but there are definitely more than 'almost no-one'. There is a common misconception that 'no one on HN does something' means that 'no one does something'. HN is heavily biased towards startups and Web companies and large segments of the industry are very underrepresented. Pretty sure telecoms is one.
- peterkelly 6y ago> Because those are the reasons[1], to my knowledge, that statically typed language won't fly. Why not? If you're doing hot code reloading, the types all of the functions and receive expressions expect still have to be compatible, otherwise the code will fail at runtime. Static type checking just lets you know about those problems ahead of time.
- Ankhers 6y agoI think it is more if Node A calls something on Node B, things should be correct initially. But then I update the code on Node B and didn't change anything on Node A, the code is now "incorrect". In this case, just because it compiles, doesn't mean it works.
- dnautics 6y ago> no one (literally) uses hot-code reloading I could be wrong but I thought phoenix uses this when you're in dev.