(no title)
yakshaving_jgt | 19 days ago
You do not understand how typing works in Haskell. You are free to work with primitives as much as you like.
yakshaving_jgt | 19 days ago
You do not understand how typing works in Haskell. You are free to work with primitives as much as you like.
troad|19 days ago
> You do not understand how typing works in Haskell.
Possible! But a little hyperbolic, perhaps. I think we're more likely to be talking past one another.
> You are free to work with primitives as much as you like.
Sure, but what's the point? If all of your functions are annotated as `myFun :: a -> b`, where a and b are arbitrary type variables, why are you writing Haskell? You're effectively writing Ruby with extra steps. You're nether getting the benefits of your rigidly typed language, nor the convenience of a language designed around dynamism.
Yes, ML-esque type systems are quite neat and flexible. But the more granular the typing you opt into, the more of the usual cost of typing you incur. Typing has inherent cost (and benefit!). And if you're not into the typing, ML-esque typed languages are a curious tool choice.
So to return to the original point, if you're passing data around in Haskell, you have more likely than not opted into some level of typing for that data - else why use Haskell - and will run into the exact issues with rigid type systems mentioned above. Can you parse and type cast and convert and what not? Sure. But no-one ever said that you couldn't, and that's precisely the busywork that dynamic languages are generally designed to lead you away from.
yakshaving_jgt|19 days ago
Direct, certainly. More than would be typically expected socially. But I don't think it's hyperbolic — I think there is genuine fundamental misunderstanding here.
The best source which I believe dispels your misunderstanding is this one: https://lexi-lambda.github.io/blog/2020/01/19/no-dynamic-typ...