On 9/17/07, Hugh Perkins <[EMAIL PROTECTED]> wrote:
> Just out of curiosity, how could one do something like a factory, so
> that by default a library uses, say, Data.Map, but by making a simple
> assignment we can switch the library to use a different
> implementation?
>
> (This is alluded to above, but not explicitly stated.  I guess it's
> too easy, but someone has to ask the newbie questions :-D )
>
> I guess we would need to have some sort of "init" function that
> returns a state containing our various factories.  The user could
> update the factories with their own factories if they choose.  The
> state would need to be passed into each function call to the library
> (!)  ?
>
> Or maybe one should store the state in a monad, and run everything
> inside a monad?
>

Why would you want to do this in Haskell? Please explain in simple
language for those of us who haven't been initiated into the secrets
of design patterns.

Cheers,
Tim

-- 
Tim Chevalier * catamorphism.org * Often in error, never in doubt
"In fact, a sense of essence is, in essence, the essence of sense, in
effect."  -- Douglas Hofstadter
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to