login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for #208 interpret(x::InputFor)=x is broken for functions and types revision 1 of 4

1 2 3 4
Editor:
Time: 2007/11/17 22:08:45 GMT-8
Note:

changed:
-
The coersion to InputForm produces a lispy representation for
most types. E.g.
\begin{axiom}
)set output tex off
)set output algebra on
\end{axiom}

\begin{axiom}
p:POLY INT:=x^2+1
pSex:=p::InputForm
p1:=interpret(pSex)
-- p1 = p?
\end{axiom}

But this fails for functions
\begin{axiom}
f:INT->INT
f(x) == x^2+1
-- force compile
f(2)
fSex:=f::InputForm
\end{axiom}
So far so good, but
\begin{axiom}
f1:=interpret(fSex)
-- f1 = f?
\end{axiom}


Submitted by : (unknown) at: 2007-11-17T22:08:45-08:00 (16 years ago)
Name :
Axiom Version :
Category : Severity : Status :
Optional subject :  
Optional comment :

The coersion to InputForm? produces a lispy representation for most types. E.g.

axiom
)set output tex off )set output algebra on

axiom
p:POLY INT:=x^2+1 2 (1) x + 1
Type: Polynomial Integer
axiom
pSex:=p::InputForm (2) (+ (** x 2) 1)
Type: InputForm?
axiom
p1:=interpret(pSex) 2 (3) x + 1
Type: Polynomial Integer

But this fails for functions

axiom
f:INT->INT
Type: Void
axiom
f(x) == x^2+1
Type: Void
axiom
-- force compile f(2)
axiom
Compiling function f with type Integer -> Integer 
   (6)  5
Type: PositiveInteger?
axiom
fSex:=f::InputForm (7) (coerceOrCroak (CONS '(Mapping (Integer) (Integer)) (wrap (MAP (#1 + (^ #1 2) 1)))) '(InputForm) 'noMapName)
Type: InputForm?

So far so good, but

axiom
f1:=interpret(fSex) >> System error: The function MAP is undefined.