[ANN] New Seaside tutorial

Philippe Marschall philippe.marschall at gmail.com
Sat Oct 20 09:57:03 UTC 2007


2007/10/20, Martin Beck <martin.beck at hpi.uni-potsdam.de>:
> Am Freitag, 19. Oktober 2007 18:37:28 schrieb Philippe Marschall:
> > html table: [
> >
> >
> > (self sortBlock value: (self filterBlock value: self items)) do: [:item |
> >
> >
> >
> > html tableRow: [self renderItemBlock value: item value: html]]]
> >
> > If you get some real strange results with a construct like this then
> > you are missing #fixTmeps.
> Are you please able to explain to me (us), what the problem could be with the
> code (I have written... ;) )? I always tried to understand the #fixTemps
> thing, but everything I grabbed out of university lectures was something like
> that it might be used for copying instance variables used by the block, but
> owned by an object not used anymore and which is therefore almost garbage
> collected...
> However, I have to admit, that I just don't know.... ;(

The problem is that Squeak does not have real block closures. This has
bitten we several times while developing Seaside applications in
Squeak. It's not uncommon that I send two hours hunting down a bug and
finally find out that I am missing a fixTemps. At my old working place
a had a sheet at the wall that counted who may times I got fucked by
missing fixTemps. Over the time I developed a feeling where I might
need a fixTemps. The combination of a loop and a rendering block is
good candidate.

Cheers
Philippe



More information about the Squeak-dev mailing list