Do you think first class types could be defined as in this article:
http://en.wikipedia.org/wiki/First-class_object

Yes.

So perhaps, in Axiom/FiCAS terms:

A first class *type* would be a *category* that could be generated,
stored, passed around and extended at run-time.

A first class *object* would be a *domain* that could be generated,
stored, passed around, extended and constructed at run-time.

You think to much in terms of OOP. Please ban the word "object" in the context of FriCAS. Although you are actually not really wrong with "object = domain", if you think in OO terms in FriCAS, you have the wrong mindset.

In PanAxiom a "type" is either a domain or a category.

A category is also first class. Using categories as function argument is OK and used, but there are serious troubles with a category that is constructed at runtime.

http://axiom-portal.newsynthesis.org/refs/articles/define.pdf

Also look at other articles on
http://axiom-portal.newsynthesis.org/refs/articles .

So, instead of creating a file.spad and then calling )co this would
instead be done directly by code running in other domains.

That's currently not possible. But it would somehow be nice if the compiler could be called on something of type "String".

It seems to me that, for a CAS that can do discrete mathematics at the
highest levels of abstraction this would be needed.

Why do you think that compilation of runtime-generated code would be vital for doing discrete mathematics?

Up to now I've only wished that Aldor would be a little more powerful in the context of the Aldor-Combinat project. But even there it is not completely clear whether compilation of generated code would solve my problem there.

> That is we need to
define structures, that can define further structures, that can define
further structures...

Sorry, but I don't agree. You can do quite a lot with functions that return function that (in turn) return functions.

Do you have a concrete use case where you would need recompilation?

Ralf

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en.

Reply via email to