▲ | chris_armstrong 4 days ago | |
As someone who uses OCaml for hobby projects, I appreciate how little the language gets in your way when you want to just “get shit done”, despite the language’s origins in academia and industrial uses. The type system usually means that I might take longer to get my code to compile, but that I won’t spend much (if any) time debugging it once I’m done. I’m in the middle of pulling together bits of a third party library and refactoring them over several days work, and I’m pretty confident that most of the issues I’ll face when done will be relatively obvious runtime ones. | ||
▲ | chris_armstrong 4 days ago | parent [-] | |
I almost never find a use for GADTs or functors or carefully specifying module types, but when I need them, they help me get stuff done neatly. Even the object system which most OCaml developers avoid, is actually very useful for some specific modelling scenarios (usually hierarchies in GUIs or IaC) that comes with similar type system guarantees and minimal type annotations. |