Hi Gaby, Martin, I've uncovered another problem in getting Martin's framework to work under OpenAxiom. Here's some stripped down code illustrating the problem:
**begin code******************************************************* )abbrev domain SCRT SCartesian SCartesian(n) : Exports == Implementation where n: PositiveInteger PI ==> PositiveInteger DF ==> DoubleFloat Exports == SetCategory with sipnt: (a:Integer,b:Integer) -> % spnt: (a:DF,b:DF) -> % Implementation == Type add sipnt(a:Integer,b:Integer):% == spnt(a::DoubleFloat,b::DoubleFloat) Rep := PrimitiveArray DF spnt(a:DF,b:DF):% == pt := new(n+1,0$DF)$Rep pt.0 := a pt.1 := b pt.n := 1...@df pt )abbrev domain SCENE Scene Scene(): Exports == Implementation where PT ==> SCartesian(2) I ==> Integer NNI ==> NonNegativeInteger LINES ==> List List PT BOUNDS ==> Record(mins:PT,maxs:PT) PARAMS ==> Union(points:LINES,boundbox:BOUNDS) Exports == with createSceneRoot:() -> % coerce: (n: %) -> OutputForm Implementation == add Rep := Record(type : NNI,children : List %,parameters: PARAMS) -- Rep := Record(type : NNI,children : List %,parameters: BOUNDS) createSceneRoot(): % == bb:BOUNDS := [sipnt(0::I,0::I)$PT,sipnt(1200::I,800::I)$PT] [1::NNI,[],[bb]] -- [1::NNI,[],bb] coerce(n: %):OutputForm == s:String := "scene " if n.type = 1 then s := concat(s,"root") s := concat([s," #ch=",string(#(n.children))]) s::OutputForm **end code****************************************************** Using a Fricas build from trunk 2010-12-07 and an OpenAxiom build from trunk 2010-12-16 these domains compile under both. However whereas under Fricas I get (1) -> createSceneRoot()$Scene (1) "scene root #ch=0" Type: Scene under OpenAxiom I get (35) -> createSceneRoot()$Scene >> System error: The value 5 is not of type LIST. I can get rid of the error under OpenAxiom by either eliminating the SetCategory assertion in the SCartesian domain or by changing the commented out lines for the corresponding ones. Any ideas? Arthur ------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d _______________________________________________ open-axiom-devel mailing list open-axiom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open-axiom-devel