On Tue, Jul 8, 2008 at 3:06 PM, Gabriel Dos Reis wrote:
>
> A /category/ is a collection of specifications.  A /domain/ is a
> collection of implementations.  An /object/ is any computational
> values in an OpenAxiom program.  An object has a representation
> given by a domain.  An object /o/ is said to have type 'd' if 'd'
> implements the reprsentation for the object /o/.
>
> A category constructor is a category-valued function, defined with
> the term 'Category' as its return type.
> A domain constructor is a domain-valued function, defined with a
> category as its return type.
>

All this sounds great to me! :-)

> Category contructors and domain constructors may be parameterized
> by domains and categories.

In Axiom category and domain constructors can be parameterized by
values passed as with any other function. These include domains and
categories as values. E.g.

  DirectProductCategory(3,Float)

I assume that you did not intend to restrict this use in OpenAxiom.

> Furthermore, domains and categories have runtime representations,
> e.g. they are reflected as objects in OpenAxiom.  In particular, domains
> objects have type 'Domain', and category objects have type 'Category'.
> And 'Domain' and 'Category' are indeed domains, because they
> implement specifications and provide object representations.
>

Agreed.

>
> I did not discuss the notion of /package/, as it is almost like
> a domain -- it implements specifications -- except that it does not
> provide object representation.
>

Right. Thanks Gaby.

What do propose for Type? Do we ever need to be able to write?

  x:Type := Integer

or define a constructor that takes parameters from Type? If so does the
domain:

  Union(Domain,Category)

make sense? Is it too awkward?

Regards,
Bill Page.

-------------------------------------------------------------------------
Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW!
Studies have shown that voting for your favorite open source project,
along with a healthy diet, reduces your potential for chronic lameness
and boredom. Vote Now at http://www.sourceforge.net/community/cca08
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to