| ▲ | prydt 2 days ago | |
I didn't expect this to get posted here. Long time lurker here. I'm really interested in programming language design and ergonomics. What niche PL features would you like to see have more adoption? | ||
| ▲ | tikhonj 2 days ago | parent | next [-] | |
Row types are great. I'm doing a PureScript project right now and absolutely love having row polymorphism. I'm also a fan of effect systems, although I haven't used them as much. Having an IO type in Haskell is great, but the ergonomics aren't (among other things, you get async-like function coloring). Effects seem like a much nicer, more composible way to get the same benefits. | ||
| ▲ | layer8 2 days ago | parent | prev | next [-] | |
I’m a big fan of checked exceptions, which are niche in the sense that only Java has them (at least among popular programming languages). However, Java lacks the ability to parameterize code over sets of exception types, which places limitations on how checked exceptions can be used with type-generic code. That’s something that can be improved. Exceptions allow more flexibility in separating the success-case program flow from the error-case program flow, compared to return codes or union return types. Unchecked exceptions, however, have the same drawbacks as dynamic typing does. Checked exceptions are the static-typing equivalent. | ||
| ▲ | jiehong 2 days ago | parent | prev [-] | |
Generic narrowing types / linear types (like if you check that a string has length 10, then its type knows, and functions accepting bounded strings can accept it.) This makes it easier to split raw inputs from validated inputs and delimiting where they are used in the code. | ||