The overall point the post you replied to was trying to make, it seems to me, was that it's not about what bad things you can or can't do in a language, it's about whether the language encourages or facilitates bad habits. You <i>can</i> muck about with pointers in Haskell, but it's made very obvious - by the community, by the documentation, by the typesystem - that you're doing something potentially unsafe and risky. Similarly, though perhaps a little less so, with Python etc.<p>As has been said before, it's not important what a language makes possible, so much as what it makes easy -- and, I'd like to add, what it makes hard.