[Haskell-beginners] How to design functions so they can be part of other larger systems?

Gabriel Gonzalez gabriel439 at gmail.com
Sun Mar 24 18:44:28 CET 2013


On 03/24/2013 10:30 AM, Costello, Roger L. wrote:
> Hi Folks,
>
> I read this statement by Tim Berners-Lee [1]:
>
>      It is not only necessary to make sure your own system
>      is designed to be made of modular parts. It is also
>      necessary to realize that your own system, no matter
>      how big and wonderful it seems now, should always be
>      designed to be a part of another larger system.
>
> Recently I have been working hard to learn how to better modularize. But now TBL says that I must do more - I must not only modularize well, but I must also build the modules so that they can be part of other larger systems.
>
> How do I design modules so that they may be part of other larger systems? Are there any articles that give guidelines on how to do this? What are your thoughts on how to do this?
>
>    

I recommend that you read the following post I wrote:

http://www.haskellforall.com/2012/08/the-category-design-pattern.html

It introduces category theory in the context of designing modular and 
resuable components.  Category theory differentiates itself from other 
vague notions of modularity by providing an elegant and precise 
definition of what it means for something to be "modular".

> /Roger
>
> [1] http://www.w3.org/DesignIssues/Principles.html
>
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
>    




More information about the Beginners mailing list