Lambda the Ultimate

inactiveTopic FAD - A Functional Analysis and Design Methodology
started 6/30/2003; 10:58:53 AM - last post 7/1/2003; 3:41:13 AM
andrew cooke - FAD - A Functional Analysis and Design Methodology  blueArrow
6/30/2003; 10:58:53 AM (reads: 1575, responses: 3)
FAD - A Functional Analysis and Design Methodology
Every popular methodology has a graphical modelling language whcih presents various pictorial representations of a system. FAD's modelling language provides the typical elements of functional programming, types and functions, plus elements to support modular development such as modules, subsystems and two forms of signature which specify and interface or a behavioural requirement...

Not sure this is exactly relevant here - hope it's OK. From c.l.f (posted by Hal Daume)
Posted to Software-Eng by andrew cooke on 6/30/03; 10:59:40 AM

Ehud Lamm - Re: FAD - A Functional Analysis and Design Methodology  blueArrow
6/30/2003; 12:01:34 PM (reads: 688, responses: 0)
Looks interesting enough. Is it appropriate for all the varieties of FP, or only a subset of them?

andrew cooke - Re: FAD - A Functional Analysis and Design Methodology  blueArrow
6/30/2003; 5:23:36 PM (reads: 647, responses: 1)
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).

Ehud Lamm - Re: FAD - A Functional Analysis and Design Methodology  blueArrow
7/1/2003; 3:41:13 AM (reads: 619, responses: 0)
seems some meta info is missing from the ps file

Page numbers are indeed inside Postscript comments. Creating a PDF file should solve your problem.


When I asked my original question I was, in fact, thinking about strict vs. lazy.