Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-17 Thread Wolfgang Jeltsch
Am Dienstag, 17. März 2009 05:09 schrieb wren ng thornton: a...@spamcop.net wrote: Or to put it another way, category theory is the pattern language of mathematics. Indeed. Though, IMO, there's a distinction between fairly banal things (e.g. monoids), Monoids aren’t a concept of category

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-17 Thread Colin Paul Adams
Wolfgang == Wolfgang Jeltsch g9ks1...@acme.softbase.org writes: Wolfgang By the way, the documentation of Control.Category says Wolfgang that a category is a monoid (as far as I remember). This Wolfgang is wrong. Category laws correspond to monoid laws but Wolfgang monoid

categories and monoids (was: Re: [Haskell-cafe] Design Patterns by Gamma or equivalent)

2009-03-17 Thread Wolfgang Jeltsch
Am Dienstag, 17. März 2009 10:54 schrieben Sie: Wolfgang Jeltsch g9ks1...@acme.softbase.org writes: By the way, the documentation of Control.Category says that a category is a monoid (as far as I remember). This is wrong. Category laws correspond to monoid laws but monoid composition is

Re: categories and monoids (was: Re: [Haskell-cafe] Design Patterns by Gamma or equivalent)

2009-03-17 Thread Jonathan Cast
On Tue, 2009-03-17 at 13:06 +0100, Wolfgang Jeltsch wrote: Am Dienstag, 17. März 2009 10:54 schrieben Sie: Wolfgang Jeltsch g9ks1...@acme.softbase.org writes: By the way, the documentation of Control.Category says that a category is a monoid (as far as I remember). This is wrong. Category

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-17 Thread Gregg Reynolds
2009/3/11 Mark Spezzano mark.spezz...@chariot.net.au: I’m very familiar with the concept of Design Patterns for OOP in Java and C++. They’re basically a way of fitting components of a program so that objects/classes fit together nicely like Lego blocks and it’s useful because it also provides

RE: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-17 Thread Bayley, Alistair
Because Haskell is not OO, it is functional, I was wondering if there is some kind of analogous design pattern/template type concept that describe commonly used functions that can be factored out in a general sense to provide the same kind of usefulness that Design Patterns do for

Re: categories and monoids (was: Re: [Haskell-cafe] Design Patterns by Gamma or equivalent)

2009-03-17 Thread Dan Piponi
On Tue, Mar 17, 2009 at 5:06 AM, Wolfgang Jeltsch g9ks1...@acme.softbase.org wrote: What is a “generalized monoid”? According to the grammatical construction (adjective plus noun), it should be a special kind of monoid There's no such implication in English. The standard example used by

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-17 Thread wren ng thornton
Gregg Reynolds wrote: Imperative programmers also used it to describe programming patterns. Implementations of things like Observer/VIsitor etc. are ad-hoc, informal constructions; the equivalent in a functional language is a mathematical structure (feel free to fix my terminology). I don't

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-16 Thread wren ng thornton
a...@spamcop.net wrote: G'day all. Quoting wren ng thornton w...@freegeek.org: Most of the (particular) problems OO design patterns solve are non-issues in Haskell because the language is more expressive. ...and vice versa. Some of the design patterns that we use in Haskell, for example,

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-15 Thread ajb
G'day all. Quoting wren ng thornton w...@freegeek.org: Most of the (particular) problems OO design patterns solve are non-issues in Haskell because the language is more expressive. ...and vice versa. Some of the design patterns that we use in Haskell, for example, are to overcome the fact

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-14 Thread wren ng thornton
Mark Spezzano wrote: Because Haskell is not OO, it is functional, I was wondering if there is some kind of analogous “design pattern”/”template” type concept that describe commonly used functions that can be “factored out” in a general sense to provide the same kind of usefulness that Design

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-14 Thread Don Stewart
wren: There also a number of idioms which are similar in scope to the idioms that arise in other languages: using tail recursion, accumulators, continuation-passing transformations, closures over recursion[6], Schwartzian transforms, etc. [6] For lack of a better name. I mean doing

[Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-11 Thread Mark Spezzano
Hi, I’m very familiar with the concept of Design Patterns for OOP in Java and C++. They’re basically a way of fitting components of a program so that objects/classes fit together nicely like Lego blocks and it’s useful because it also provides a common “language” to talk about concepts, like

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-11 Thread minh thu
2009/3/11 Mark Spezzano mark.spezz...@chariot.net.au: Hi, I’m very familiar with the concept of Design Patterns for OOP in Java and C++. They’re basically a way of fitting components of a program so that objects/classes fit together nicely like Lego blocks and it’s useful because it also

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-11 Thread Robin Green
The concept of design pattern tends not to be used by Haskell programmers - it brings a lot of baggage with it (like being formally documented in a particular way, being proven by being used in production several times, etc.) and it doesn't seem to be particularly useful for us in this heavyweight

Re: [Haskell-cafe] Design Patterns by Gamma or equivalent

2009-03-11 Thread Sean Leather
Hi Mark, Because Haskell is not OO, it is functional, I was wondering if there is some kind of analogous “design pattern”/”template” type concept that describe commonly used functions that can be “factored out” in a general sense to provide the same kind of usefulness that Design Patterns do