Ralf Hemmecke wrote:
> 
> > t := OrderedVariableList([script(a, [[],[1],[],[]])]) 
> > 
> >    (6)  OrderedVariableList([a[;1]])
> > 
> > Without skipping symbol inside would be 'a[;1;;]'.
> 
> OK. I've changed to
> 
>     coerce(x : %) : OutputForm ==
>         not(scripted? x) => outputForm(x pretend Symbol)
>         ss : Scripts := scripts x
>         rsl : List(L) := [ss.sub, ss.sup, ss.presup, ss.presub]
>         sl: L := [commaSeparate z for z in rsl]
>         x0 := outputForm(name(x) pretend Symbol)
>         x1 := scripts(x0, sl)
>         a := ss.args
>         empty?(a) => x1
>         prefix(x1, a)
> 
> and that indeed yields
> 
> (1) -> t := OrderedVariableList([script(a, [[],[1],[],[]])])
> 
>    (1)  OrderedVariableList([a[;1;;]])
>                                                                    Type:
> Type
> (2) -> of := t::OutputForm
> 
>                               1
>    (2)  OrderedVariableList([a ])
>                                                              Type:
> OutputForm
> (4) -> of pretend SExpression
> 
>    (4)
>    (OrderedVariableList
>     (BRACKET (AGGLST (SUPERSUB a (AGGLST) (AGGLST 1) (AGGLST) (AGGLST)))))
>                                                             Type:
> SExpression
> 
> However, I think that the s-expression looks OK. IMHO that should count
> as a bug in whatever produces "OrderedVariableList([a[;1;;]])".
> But judging from the output of t::OutputForm maybe there is a reason why
> the scripted symbol inside OrderedVariableList is printed in linear
> (instead of 2D) form. Otherwise the two ;; at the end wouldn't be an
> issue at all.

Printinting in linear form is a feature: the same thing should appear
as a type and it is desirable to fit type in one line.  In principle
code doing linear format could skip scripts.  However:

- this code is in Boot and I prefer to move functionality to Spad
- convention that empty list as a script means omited script is
  local to Symbol, so I prefer to handle it here instead of
  spreading it to unrelated places.

-- 
                              Waldek Hebisch
[email protected] 

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to