How tested is this in the field? "Safe" for an init replacement is a strong statement. The git repo statistics make this look young but I don't know what Prismriver is.
I'm not saying this to be a jerk, I'm saying this because, well, "safe" is a high bar for an init replacement! And I'm genuinely interested in the answer.
What does type safety has anything to do with runtime or user of an init program? Or is not the memory safety provided by the OS already? Does OCaml bring anything specific to the table, or could this've been written in Go as well?
Operating systems usually only provide memory safety between processes. The operating system doesn't protect a C program from overflowing its own buffers or making incorrect writes to the heap for example. OCaml's memory safety means many of those types of bugs aren't possible.
I'm not saying this to be a jerk, I'm saying this because, well, "safe" is a high bar for an init replacement! And I'm genuinely interested in the answer.