"domains are constructed at runtime" OK sure, although I could quibble over what "constructed" means here. But the point is that once constructed domains to not change. They are static.
I admit that the distinction is not so straight forward in the case of dependent types or if types where polymorphic (not the case in Axiom) but I believe that it each case it is possible to give a definition of type that is consistent with the claim that it is "static", i.e. that it does not change during run-time. In the example you gave we need to ask: What is the type of T == FiniteAbelianMonoidRing(R,E) One possible answer is that such dependent types must be treated as being "higher-order". In this case it is just the functor FiniteAbelianMonoidRing. And FiniteAbelianMonoidRing does not change during run-time. Note: In this terminology a constructor is a type expression consisting of a functor applied to specific arguments just like an ordinary expression can be a function applied to some argument. E.g. 'sin' is a function, 'sin(x)' is an expression. I am not really sure what you mean by "concrete return type". What would be a non-concrete return type? Regards, Bill Page. On Fri, Feb 17, 2012 at 2:59 AM, Ralf Hemmecke <[email protected]> wrote: >> What does "Normal types are dynamic" mean to you? > > > I'm pretty sure that Waldek can only have meant that domains are constructed > at runtime while categories are considered to be static, i.e. must be > determined at compile time. > > In fact, it sounds a bit strange for situations like > > PolynomialRing(R : Join(SemiRng, AbelianMonoid), > E : OrderedAbelianMonoid) : T == C > where > T == FiniteAbelianMonoidRing(R,E) with > ... > > where the concrete return type is only known when this domain is > instantiated. > > In particular, for categories like > > Cat(X: SetCategory): Category == with > if X has Ring then ... > ... > > the dynamic/static concept can lead to confusion. > > 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.
