|
|
|
last edited 11 years ago by test1 |
| 1 2 | ||
|
Editor: test1
Time: 2014/05/06 17:02:11 GMT+0 |
||
| Note: | ||
added:
From test1 Tue May 6 17:02:11 +0000 2014
From: test1
Date: Tue, 06 May 2014 17:02:11 +0000
Subject:
Message-ID: <20140506170211+0000@axiom-wiki.newsynthesis.org>
Status: open => not reproducible
For example:
(1) -> n:TwoDimensionalArray Union ( Integer,Float):=new(2, 2, 0)
| (1) |
should display a rectangular array of numbers.
ARR2CAT you find the appropriate conversion operation:
if R has CoercibleTo(OutputForm) then
coerce(m:%) ==
l : List List OutputForm
l := [[qelt(m,i,j) :: OutputForm _
for j in minColIndex(m)..maxColIndex(m)] _
for i in minRowIndex(m)..maxRowIndex(m)]
matrix l
which really looks alright. Note also, that
Union(INT,FLOAT) has KOERCE OUTFORM
| (2) |
and the operation is not overridden in ARRAY2 or IIARRAY2. But the miracle is, inserting a print("hi")$Lisp in the above operation shows that it actually doesn't get invoked. Somehow it seems to me that rather the following function from HOAGG gets invoked:
coerce(x:%):OutputForm ==
bracket
commaSeparate [a::OutputForm for a in parts x]$List(OutputForm)
which can be seen by looking at:
n:TwoDimensionalArray Union(Integer,Float):=new(2, 2, 0)
| (3) |
n::OUTFORM::SEXStatus: open => not reproducible
Cannot convert the value from type OutputForm to SExpression .