3 ms·
It seems almost too good to be true. Well done! Could someone share some bad experiences when adopting Nim so I can weight that in? I'm seriously considering i
by haolez 3y ago
It seems almost too good to be true. Well done!
Could someone share some bad experiences when adopting Nim so I can weight that in? I'm seriously considering it.
- j-james 3y agoI have a shortlist of pain points: - Tooling is not great. The language server has a tendency to silently crash on occasion, and it's no rust-analyzer to begin with. A tooling rewrite has been delayed behind proper incremental compilation, which has been delayed behind ARC/ORC... - Interfaces ("concepts") are experimental and there are two differing implementations. - It lacks proper sum types and structural pattern matching in the core language. There are a number of quite good macro-based libraries that provide for this, however: fusion/matching, andreaferretti/patty, beef331/fungus, alaviss/union... - Optional types are not the standard: the stdlib will throw exceptions. This is more so a personal preference than anything. But that's about it. I do like Nim quite a lot.
- ElegantBeef 3y ago> It lacks proper sum types We've talked about this before! You know it has sum types, just not the variation you want.
- j-james 3y agoI know, I know! I do very much like the "type wrapper" approach more than the "object variant" approach. Perhaps in the future we'll simply have both and have no reason to debate ;-)