|
|
|
last edited 17 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:
(1) -> 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