Hi Niall,
this is great news, thanks a lot for this effort. I will update the
web-site of Pier.
FYI: I also forwarded your mail to seaside(a)lists.squeakfoundation.org
(the Seaside mailing list) and smallwiki(a)iam.unibe.ch (the
Magritte/Pier mailing list).
Set and Dictionary equality
==================
This is a portability problem I should know from Seaside and
Scriptaculous. I must admit that I didn't pay attention to that in
Magritte/Pier.
emergency' on various operations: I deduce that
some VW Dictionaries
and Sets have contents whose equality tests create circularities with
this. I've therefore added Set>>=@ and Dictionary>>=@ to provide the
Squeak implementations, as the easiest way to edit the failing
assertions. I chose =@ thinking the @ would suggest 'is equal at (its
various contents)'. I made it binary only because that makes it a
little less work to rewrite the tests than with a keyword method.
Please give me a list of methods that rely on Set/Dictionary equality,
so that I can fix the code in Magritte/Pier. I guess it would be
easier to make the code more portable than having the porters to patch
these methods?
Trivial common coding style remarks
========================
Most points are already known from Seaside and other ports. One that
did not arise in Seaside or Magritte AFAIK is that sort/sort: returns
the sorter, not the sorted collection, in VW so needs code like
... := ... sort ...
changed to
... := ... sort ... ; yourself
Writing sort-in-place code this way in Squeak would make for commonality
when porting is expected.
Indeed, a well known problem, that should be easily fixable in Squeak
as well. I assume that I can find all the occurrences of this problem
by looking at the senders of #sort: ?
Since VW's class-side #raiseSignal is already
common to both it and
Squeak (or already ported to Squeak), I've used it to replace the
#signal method (that it calls in Squeak) in Pier code, rather than add
#signal to VW.
Mhh, another thing I should know. I will fix it as well.
Cheers,
Lukas
--
Lukas Renggli
http://www.lukas-renggli.ch