[Haskell-cafe] APIs (was: Unexported functions are evil)

Claus Reinke claus.reinke at talk21.com
Wed May 18 08:11:10 EDT 2005

> I think you raise an important point.  Reading this, I realize that I have 
> no principled basis for deciding what makes a good API, in any language.  I 
> do, of course, have lots of personal ideas and feelings about what APIs 
> should be like, but not that I could defend as coherent and rational strategy.
> So I ask myself:  are there any good papers or books on this topic that 
> outline a coherent and principled approach to API design?

if you like the historical approach, you could start with David Parnas 

    On the Criteria To Be Used in Decomposing Systems into Modules

then look for papers that reference this one. see also the interview


for how he came to start thinking about interfaces and information hiding.


More information about the Haskell-Cafe mailing list