|
|
last edited 16 years ago by gdr |
1 2 | ||
Editor: gdr
Time: 2008/05/18 13:33:32 GMT-7 |
||
Note: |
added:
From gdr Sun May 18 13:33:32 -0700 2008
From: gdr
Date: Sun, 18 May 2008 13:33:32 -0700
Subject:
Message-ID: <20080518133332-0700@axiom-wiki.newsynthesis.org>
Fixed in OpenAxiom
The expected result is false, but:
R ==> Record(key: Symbol,entry: String)
T ==> AssociationList(Symbol,String)
t1 := construct([[x,"ix"]$R])$T
(1) |
t2 := construct([[y,"iy"]$R])$T
(2) |
(t1=t2)::Boolean
(3) |
The reason is in the definition of equality in 'TBAGG':
s:% = t:% == eq?(s,t) => true #s ^= #t => false for k in keys s repeat (e := search(k, t)) case "failed" or (e::Entry) ^= s.k => false true
which will always return true
. One should insert a "return" between =>
and false
.
Martin