[squeak-dev] The Trunk: Compiler-eem.480.mcz

Taeumel, Marcel Marcel.Taeumel at hpi.de
Thu Nov 24 19:15:50 UTC 2022

Hehe. Of course you do. 😉 I just wanted to highlight the fact that nil is no domain object. Exceptional usage should be done by intention. In general, ifNil checks interfere with readability of domain logic. Still, I see no harm in such ifNil checks. Who would agree on a domain-specific symbol for start anyway 😅
From: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> on behalf of Eliot Miranda <eliot.miranda at gmail.com>
Sent: Thursday, November 24, 2022 7:53:35 PM
To: The general-purpose Squeak developers list <squeak-dev at lists.squeakfoundation.org>
Subject: Re: [squeak-dev] The Trunk: Compiler-eem.480.mcz

Hi Marcel,

On Nov 24, 2022, at 1:03 AM, Marcel Taeumel <marcel.taeumel at hpi.de> wrote:

+1 Even for a loop-based algorithm, clarity would improve if the initial case would be flagged with a symbol, not nil:

x := #start.
[ ... ] whileTrue: [
   x = #start ifTrue: [x := ... ].

Please don’t take this personally; I find the above pretentious in the extreme, and, given how much thought Smalltalk-80’s designers gave to initializing with nil (again it’s in the blue book), displaying and/or celebrating ignorance.  So -1,000.


Am 23.11.2022 21:23:27 schrieb Tobias Pape <das.linux at gmx.de>:

Yet, nil is only seldom a good domain object.

> On 23. Nov 2022, at 19:34, tim Rowledge wrote:
> I won't quote it all again but what Eliot wrote is important. There are good solid reasons why Smalltalk has a rigorously defined UndefinedObject. We demand rigorously defined areas of doubt and uncertainty!
> tim

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20221124/92a67998/attachment.html>

More information about the Squeak-dev mailing list