> There are also Ports, which don't carry the same risk of fatal crashes.
Oh, this is cute statement xD No, ports also carry the same risk as NIFs if
you use port drivers, because it's still the same way of running the code,
just with different API. You need ports backed by external process to be
isolated from the crash, though there's still the problem of such ports
eagerly reading all the available data without any backpressure whatsoever, so
your BEAM can trigger OOM killer. This is much easier to avoid, fortunately.
Oh, this is cute statement xD No, ports also carry the same risk as NIFs if you use port drivers, because it's still the same way of running the code, just with different API. You need ports backed by external process to be isolated from the crash, though there's still the problem of such ports eagerly reading all the available data without any backpressure whatsoever, so your BEAM can trigger OOM killer. This is much easier to avoid, fortunately.