# [racket] Re: [plt-scheme] Re: Typed scheme: Cannot apply expression of type Procedure, since it is not a function type

>>*
*>*
*>* Products are Ands are tuples. E.g. int * bool -- an integer and a boolean
*>* Sums are Ors are discrimintaed unions. E.g. Foo | Bar
*>* Duals informally means you can map concepts in one domain directly
*>* into the other
*
so products and sums would be isomorphic? Then sums would be some kind of "compressed representation" in a way, allowing me to express the same thing in a shorter/easier way?
>*
*>* I don't have a good explanation for this, but I think sums and
*>* products as axes in 2D, and having the two allows you to escape the
*>* constraints of one axis.
*
This sounds interesting. What kinds of constraints are these - or perhaps a quicker-to-answer question: where's this subject treated in mathematics (haven't read anything about it in my precious "Abstract Algebra" :-;)?
_________________________________________________
For list-related administrative tasks:
http://list.cs.brown.edu/mailman/listinfo/plt-scheme
_________________________________________________
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/users