From: Brian Drummond <brian_drummond@btconnect.com>
Subject: Re: not null
Date: Thu, 05 Mar 2009 11:32:13 +0000
Date: 2009-03-05T11:32:13+00:00 [thread overview]
Message-ID: <j8dvq4lmb7p7hr70h7k3elqv5k8lrvjcv5@4ax.com> (raw)
In-Reply-To: 75e0862b-cb8d-4f47-b55e-e2c6235997ea@n33g2000pri.googlegroups.com
On Wed, 4 Mar 2009 17:47:03 -0800 (PST), Adam Beneschan <adam@irvine.com> wrote:
>On Mar 4, 5:32 pm, Brian Drummond <brian_drumm...@btconnect.com>
>wrote:
>> On Wed, 4 Mar 2009 08:09:56 -0800 (PST), Adam Beneschan <a...@irvine.com> wrote:
>> >I'm having difficulty understanding the point. You have to have the
>> >idea of the lack of a reference. How else would you implement a
>> >linked list abstraction?
>>
>> Possibly by pointing from the end back to the list head.
>>
>> It would make the "end of list" test more expensive (the head might have to be
>> kept in a register or passed around as another argument). I don't think it would
>> be pretty, but can't see any fundamental reason why it shouldn't work.
>
>Sure you could make it work, but what would be the point of doing so?
>And would it be any less error-prone? Actually, it might even be
>moreso---when writing the operation to insert an element at the front
>of the list, you could forget to modify the reference in the tail.
I wasn't suggesting it was a good idea...
Agree on all the above; and the error wouldn't bes ignificantly easier to find.
OTOH uninitialised (or incorrectly incremented) pointers in some languages cause
real grief... (my Algol W days are so far behind me, I can't remember if an
uninitialised reference was even possible)
>You could also make the "end of list" point to some special dummy
>object.
I don't see that as semantically different from a null pointer.
Which perhaps just helps to make your point
>that the same set of mistakes applies as to a language that involves
>null reference, but the syntax of those mistakes is different, applies
>to both of these "solutions".
In which case, Hoare's point remains a mystery to me.
- Brian
next prev parent reply other threads:[~2009-03-05 11:32 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-04 14:44 not null Georg Bauhaus
2009-03-04 14:56 ` Hyman Rosen
2009-03-04 15:22 ` Georg Bauhaus
2009-03-04 16:16 ` Adam Beneschan
2009-03-05 14:24 ` Georg Bauhaus
2009-03-05 16:07 ` Adam Beneschan
2009-03-06 1:07 ` Hibou57 (Yannick Duchêne)
2009-03-04 16:09 ` Adam Beneschan
2009-03-04 20:38 ` Dmitry A. Kazakov
2009-03-05 1:54 ` Adam Beneschan
2009-03-05 8:42 ` Dmitry A. Kazakov
2009-03-05 1:32 ` Brian Drummond
2009-03-05 1:47 ` Adam Beneschan
2009-03-05 11:32 ` Brian Drummond [this message]
2009-03-05 15:06 ` Dmitry A. Kazakov
2009-03-05 13:57 ` Georg Bauhaus
2009-03-05 19:53 ` Jack Mitchell
2009-03-05 8:49 ` Jacob Sparre Andersen
2009-03-05 16:10 ` Adam Beneschan
2009-03-05 17:20 ` Jacob Sparre Andersen
2009-03-06 1:04 ` Hibou57 (Yannick Duchêne)
2009-03-06 12:01 ` Harald Korneliussen
2009-03-06 12:43 ` Jacob Sparre Andersen
2009-03-06 13:05 ` Harald Korneliussen
2009-03-06 15:21 ` Dmitry A. Kazakov
2009-03-06 16:59 ` Harald Korneliussen
2009-03-06 17:48 ` Dmitry A. Kazakov
2009-03-06 20:05 ` Georg Bauhaus
2009-03-06 21:31 ` Dmitry A. Kazakov
2009-03-04 16:19 ` Robert A Duff
2009-03-04 20:39 ` Colin Paul Gloster
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox