On Sat, Jan 7, 2012 at 11:38 AM, Waldek Hebisch wrote:
> ...
> I am a bit disappointed that after rewrite you find FriCAS
> version so hard to understand.  Could you say what OpenAxiom
> version easier to you?  Is it difference between:
>
> PrinAncb := categoryPrincipals CatEval(bname,$e)
>
> and
>
> PrinAncb:= first(b).(4)
>
> (and similar places)?
>

My first difficulty started with Ralf's observation:

On Thu, Jan 5, 2012 at 10:45 PM, Ralf Hemmecke <[email protected]> wrote:
> ...
> Interesting
>
> PrinAncb:= first(b).(4)
>
> gives
>
> with bootsys
>  (SETQ |PrinAncb| (CAR (ELT (|CatEval| |bname|) 4)))
>
> with depsys
>  (SPADLET |PrinAncb| (CAR (ELT (|CatEval| |bname|) 4)))
>
> Why is it basically the same here and makes a difference for "CAR(d).1".
> I'm a bit confused now.

How is it possible that b can be replaced with  '(|CatEval| |bname|)'
??? 'bname:=b.(0)' but it is just 'b' that is passed to 'first' ...
Where is 'CatEval'? To find out I must study very carefully the
function 'FindFundAncs'. For me this was very hard. As usual in Axiom
code, the comments are not helpful and sometimes even misleading.

I was very surprised when you admitted in another email in this chain
that you had deliberately replaced the expression containing CatEval
with just p.  :(

My second difficulty is to what is the significance of 'first(b).(4)'.
I am asked to believe the comment:
  --Principal Ancestors of b
but I do not know (yet) what is b. What is the structure of b?  For
this purpose the name 'b' alone is of no help.

Both of these questions are easily answered from the OpenAxiom version
of the code. Or at the very least I am reassured that the comment is
indeed correct.  Also in OpenAxiom the function ''FindFundAncs' has
been eliminated and  'JoinInner' function has been simplified so that
I have some confidence that I could really understand in detail of
what JoinInner actually does. With the FriCAS version I find I am
still uncertain.

I am especially convinced that using accessor macros such as '
categoryPrincipals' makes is easier to read the code without having to
first memorize the basic Axiom data structures.

Regards,
Bill Page.

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