Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-21 Thread Oleksandr Manzyuk
On Fri, Dec 21, 2012 at 4:40 AM, Alexander Solla alex.so...@gmail.com wrote: On Thu, Dec 20, 2012 at 12:53 PM, Oleksandr Manzyuk manz...@gmail.com wrote: I have no problems with the statement Objects of the category Hask are Haskell types. Types are well-defined syntactic entities. But

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-21 Thread wren ng thornton
On 12/21/12 3:27 AM, Oleksandr Manzyuk wrote: On Fri, Dec 21, 2012 at 4:40 AM, Alexander Solla alex.so...@gmail.com wrote: I don't see how associativity fails, if we mod out alpha-equivalence. Can you give an example? (If it involves the value undefined, I'll have something concrete to add

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-20 Thread wren ng thornton
On 12/17/12 9:45 PM, Christopher Howard wrote: So you could have... (coupler . thing) . gadget Because the coupler and the thing would combine to create a component with one spare connector. This would then combine with the gadget to make the final component. However, if you did... coupler .

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-20 Thread wren ng thornton
On 12/18/12 5:03 PM, Christopher Howard wrote: Since I received the two responses to my question, I've been trying to think deeply about this subject, and go back and understand the core ideas. I think the problem is that I really don't have a clear understanding of the basics of category

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-20 Thread Oleksandr Manzyuk
the category of Haskell types and Haskell functions[1] [1] Note that this may not actually work out to be a category, but the basic idea is sound. I would be curious to see this example carefully worked out. I often hear that Haskell types and Haskell functions constitute a category, but I

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-20 Thread Jay Sulzberger
On Thu, 20 Dec 2012, Oleksandr Manzyuk manz...@gmail.com wrote: the category of Haskell types and Haskell functions[1] [1] Note that this may not actually work out to be a category, but the basic idea is sound. I would be curious to see this example carefully worked out. I often hear that

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-20 Thread Alexander Solla
On Thu, Dec 20, 2012 at 12:53 PM, Oleksandr Manzyuk manz...@gmail.comwrote: I have no problems with the statement Objects of the category Hask are Haskell types. Types are well-defined syntactic entities. But what is a morphism in the category Hask from a to b? Commonly, people say

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-19 Thread Alexander Solla
On Tue, Dec 18, 2012 at 11:53 PM, Christopher Howard christopher.how...@frigidcode.com wrote: I really like the idea that all parts of my program could be cleanly and systematically composed from smaller pieces, in some beautiful design patter. Many of the problems in my practical

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-19 Thread Mark Flamer
I have also become intrigued and confused by this category theory and how it relates to Haskell. It has been stated many times that you don't need to understand category theory to utilize the Haskell language but all the concepts, patterns and every paper describing them seems to be written by

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-19 Thread Ertugrul Söylemez
Mark Flamer m...@flamerassoc.com wrote: I have also become intrigued and confused by this category theory and how it relates to Haskell. It has been stated many times that you don't need to understand category theory to utilize the Haskell language but all the concepts, patterns and every

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Christopher Howard
On 12/17/2012 06:30 PM, Richard O'Keefe wrote: On 18/12/2012, at 3:45 PM, Christopher Howard wrote: It's basically the very old idea that an Abstract Data Type should be a nice algebra: things that look as though they ought to fit together should just work, and rearrangements of things

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Gábor Lehel
On Tue, Dec 18, 2012 at 11:03 PM, Christopher Howard The original link I gave http://www.haskellforall.com/2012_08_01_archive.html purposely skipped over any discussion of objects, morphisms, domains, and codomains. The author stated, in his first example, that Haskell functions are a

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Jay Sulzberger
On Tue, 18 Dec 2012, Christopher Howard wrote: On 12/17/2012 06:30 PM, Richard O'Keefe wrote: On 18/12/2012, at 3:45 PM, Christopher Howard wrote: It's basically the very old idea that an Abstract Data Type should be a nice algebra: things that look as though they ought to fit together

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Ertugrul Söylemez
Christopher Howard christopher.how...@frigidcode.com wrote: Since I received the two responses to my question, I've been trying to think deeply about this subject, and go back and understand the core ideas. I think the problem is that I really don't have a clear understanding of the basics of

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Richard O'Keefe
On 19/12/2012, at 11:03 AM, Christopher Howard wrote: Since I received the two responses to my question, I've been trying to think deeply about this subject, and go back and understand the core ideas. I think the problem is that I really don't have a clear understanding of the basics of

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Alexander Solla
On Tue, Dec 18, 2012 at 4:49 PM, Ertugrul Söylemez e...@ertes.de wrote: These laws make morphisms isolated and composition lightweight as well as undisturbing. Now try to transfer these notions to a concrete category, for example the category of web servers: The objects are sets and a

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Gershom Bazerman
On 12/17/12 9:45 PM, Christopher Howard wrote: However, what I'm wondering about is ideas that can be composed but that don't seem to fit the idea of category, because they don't obey the associativity law. To give a specific example (pseudo code like, without any idea here of implementation or

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-18 Thread Christopher Howard
On 12/18/2012 08:02 PM, Gershom Bazerman wrote: On 12/17/12 9:45 PM, Christopher Howard wrote: I don't think you're describing a Category in the sense of the Haskell Category typeclass. But that's ok! Just because some things are categories and are nice doesn't mean that we can't have other

[Haskell-cafe] category design approach for inconvenient concepts

2012-12-17 Thread Christopher Howard
Recently I read this article I happened across, about the categorical design pattern: http://www.haskellforall.com/2012/08/the-category-design-pattern.html Barely understood it, of course, but it was a rather intriguing concept. So now I'm looking at all my programming problems trying to make

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-17 Thread Richard O'Keefe
On 18/12/2012, at 3:45 PM, Christopher Howard wrote: Recently I read this article I happened across, about the categorical design pattern: http://www.haskellforall.com/2012/08/the-category-design-pattern.html It's basically the very old idea that an Abstract Data Type should be a nice

Re: [Haskell-cafe] category design approach for inconvenient concepts

2012-12-17 Thread Ertugrul Söylemez
Christopher Howard christopher.how...@frigidcode.com wrote: Say you created a type called Component (C for short), the idea being to compose Components out of other Components. Every C has zero or more connectors on it. Two Cs can be connected to form a new C using some kind of composition