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