comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: not null
Date: Wed, 4 Mar 2009 21:38:22 +0100
Date: 2009-03-04T21:38:25+01:00	[thread overview]
Message-ID: <gh8odo3c33ch$.13j4r5d434rg9.dlg@40tude.net> (raw)
In-Reply-To: 761a4fb8-de91-43b3-b420-55dbc06a61e7@k9g2000prh.googlegroups.com

On Wed, 4 Mar 2009 08:09:56 -0800 (PST), Adam Beneschan wrote:

> On Mar 4, 6:56 am, Hyman Rosen <hyro...@mail.com> wrote:
>> Georg Bauhaus wrote:
>>> As said to have been seen on /.
>>> another financial disaster, again caused
>>> by making references to nothing, in Algol W,
>>>http://qconlondon.com/london-2009/presentation/Null+References:+The+B...
>>
>> You are misreading the abstract. First of all, it's not
>> about some particular incident. He's talking about the
>> overall impact. Second, he's not talking about failure
>> to check for null references, he's talking about having
>> null references at all, so Ada is no better.
> 
> 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?

Recursive types is not the single case where references are used. For smart
pointers not null constraint is very useful. Though it is quite painful to
make use of it, because of broken initialization issues. It is also useful
for access discriminants etc. Granted, the latter shouldn't be access. I
mean it should better be:

   type T (X : Limited_Foo) is ...

rather than awful

   type T (X : not null access Limited_Foo) is ...

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2009-03-04 20:38 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 [this message]
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
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