Also when you have code block, data flow and control flow diagrams? How well thought out does something have to be to be architecture?
In the case of a computer program the "architecture" should be extremely well-thought out, idiomatic, and using established practices to produce a program that is easy to maintain, understand, and test.
I don't believe you need diagrams but in the case of Haskell, the types (if you design type-first) serve as one piece of the blueprint that is to become your program, your cabal file, directory structure, documentation (both user docs and API docs), and tests are all part of that blueprint.