well, i'm home now and have had a quick skim through. it tries to be general, but doesn't seem to have much support for impure languages (although i noticed monads were mentioned from time to time).
curiously, there didn't seem to be much discussion of the form of graphical representation chosen, which requires an unfortunate amount of nesting of symbols (something uml is pretty careful to avoid, as you end up with too large a range of sizes of objects, text, etc).
i found it difficult to evaluate because i've not programmed in a functional language in "large" projects. when i look at uml, i can identify aspects of the language that are clearly intended to solve particular problems (collection of requirements, presentation of use cases to a non-technical audience, relating design to requirements). i don't know if development in functional languages avoids these problems, but they didn't seem to be addressed much by fad. maybe the idea is to use the appropriate diagrams from uml, with the thesis concentrating mainly on the replacement of class diagrams.
one thing i thought would be present, but appeared not to be, was the representation of data flowing through a program. the main emphasis seemed to be on the description of modules, the dependency between functions, and the structure of types.
a quick search of google didn't turn up any implementation.
disclaimer: all the above from skimming the book quickly (i'm a bit busy, and annoyingly i seem unable to jump to numbered pages or move backwards through the text - seems some meta info is missing from the ps file).
|