Waldek Hebisch <[email protected]> writes:

| Gabriel Dos Reis wrote:
| > 
| > Waldek Hebisch <[email protected]> writes:
| > 
| > | This is reasonable choice if you _have to_ give meaning to '=='
| > | in such cases. 
| > 
| > Indeed, all flavours of AXIOM support the following style
| > 
| >    SomeFunctor(): Public == Private where
| >      Public == some category expression
| >      Private == some domain expression
| > 
| > I am unconvinced of the value of requiring that to be written as
| > 
| >    SomeFunctor(): Public == Private where
| >      Public ==> some category expression
| >      Private ==> some domain expression
| 
| Well, inside toplevel 'where' FriCAS blindly converts '==' to '==>'
| (because othere uses of '==' make no sense here).  But that is
| clearly a hack.  IMHO normal constant definitions should be
| typechecked.

or the definition could have its type inferred (as opposed to type checked)...

| But above we need to "expand" where to see what
| type is defined (the 'some category expression' part).  Worse,
| freqently we have things like:
| 
| SomeFunctor(A : CA, B : CB) : Public == Private where
|     CA ==> cata
|     CB ==> catb

I am not sure this is as complicated as it sounds.
I believe all flavours of AXIOM do (or at least used to do) the
following for this where-expression: 

  1. elaborate of the side conditions.
     This essentially means that the environment is augmented with
     the constant/macro definitions.

  2. in the resulting environment, pull our types and names from the
     parameter declarations.

  3. elaborate the type declarations in the resulting environment.

  4. elaborate SomeFunctor(A,B) == Private


Did FriCAS change that sequence of events?

-- Gaby

-- 
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