> You can say the same thing about Python: "Stupid language. ..
I think you are misunderstanding the point of the article. The writer doesn't mean to say that his puzzle languages are bad, just that they take more thought up front.
I don't think that is bad, I think it can be a benefit. E.g. in Haskell you spend a bit more time upfront to get the types right and making sure everything is pure. The purpose of that is to have a program that won't run into any issues at runtime.
With a language like Python you have something ready to fun faster, but at runtime you can expect some errors, so you will have to spend your time at that point.
My point is that you don't spend as much time up front if you have fully internalized the way the language wants you to think. It took me a while to reach some kind of plateau in Haskell, and now I can simply compose working code at the REPL and build programs iteratively like how I can in Python and Lisp where, previously, I had to think hard about monads and types to get anything done.
It's hard to see the riddle some people would find in Python because we're all experienced programmers and imperative languages like Python were what we all started out on. For us, the riddle coming into them was learning how to program at all, so we didn't see the concepts we hadn't mastered as arbitrary stumbling blocks getting in the way of this new language being normal.
I think you are misunderstanding the point of the article. The writer doesn't mean to say that his puzzle languages are bad, just that they take more thought up front.
I don't think that is bad, I think it can be a benefit. E.g. in Haskell you spend a bit more time upfront to get the types right and making sure everything is pure. The purpose of that is to have a program that won't run into any issues at runtime. With a language like Python you have something ready to fun faster, but at runtime you can expect some errors, so you will have to spend your time at that point.