"abstraction over type constructors" might have to do with typing and not related to functional programming.
"abstraction over type constructors" might have to do with typing and not related to functional programming.
The hardcore “sound types” crowd believes that anybody using dynamic types is doomed.
I must not have the same problems they do.
First class functions; closures; higher order functions; partial function application, seasoned with the occasional variadic vs fixed arity function, and I’m good.
One can learn the other 95% of the jargon to deal with 5% of the problems later.
What they believe is that "dynamic types" is a misnomer, and if you think your program is checking dynamic types, it is in fact doing runtime pattern matching over a variant record. There's nothing wrong with pattern matching and variant records; but conflating them with types is just nutty, and using them pervasively as part of the ordinary flow of code is no different than programming in old-style VB.
For the record I am a convert. Types have made my developer life much happier, especially working with unfamiliar code across multiple projects/teams. When you treat your builds as long term proofs your confidence level increases dramatically.