From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Quick question regarding limited type return syntax
Date: Sat, 2 Aug 2014 09:34:04 +0200
Date: 2014-08-02T09:34:04+02:00 [thread overview]
Message-ID: <20m59uxjlygw$.2mpabkt469vp.dlg@40tude.net> (raw)
In-Reply-To: c43h9sFgdq8U1@mid.individual.net
On Sat, 02 Aug 2014 10:11:59 +0300, Niklas Holsti wrote:
> More elegantly IMO, the language could allow a default initialization
> expression to be assigned in the type or subtype declaration:
>
> type My_Type is <type definition> := <expression>;
This suggests assigning something to the type.
(The only way to have default initialization is by having a default
constructor. Which is just same.)
BTW,
type Integer is range ... := 0;
subtype Positive is Integer range 1..Integer'Last;
X : Positive; -- Oops!
[...]
> Randy's suggestion for an explicit indication that an object is
> default-initialized is an orthogonal isssue.
Yes, and it would have sense if implicitly uninitialized objects were
illegal. Unfortunately they are not.
> IMO the risk of using uninitialized variables, and the resulting
> non-deterministic bugs, is one of the major remaining holes in the
> safety of Ada.
All initialization/finalization issues are. E.g. parent's Initialize not
called. Finalization deadlock with task components. Dispatching calls
through class-wide access discriminants upon initialization/finalization.
The holes are as big as the hull...
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2014-08-02 7:34 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-30 23:51 Quick question regarding limited type return syntax NiGHTS
2014-07-31 0:02 ` Adam Beneschan
2014-07-31 0:56 ` NiGHTS
2014-07-31 0:48 ` Shark8
2014-07-31 1:00 ` NiGHTS
2014-07-31 1:29 ` Adam Beneschan
2014-07-31 1:38 ` NiGHTS
2014-07-31 4:01 ` Shark8
2014-08-01 2:12 ` Randy Brukardt
2014-08-01 3:40 ` Shark8
2014-08-01 7:57 ` J-P. Rosen
2014-08-01 19:23 ` Randy Brukardt
2014-08-01 19:37 ` J-P. Rosen
2014-08-01 20:53 ` Shark8
2014-08-02 7:11 ` Niklas Holsti
2014-08-02 7:34 ` Dmitry A. Kazakov [this message]
2014-08-02 13:20 ` Robert A Duff
2014-08-02 13:44 ` Dmitry A. Kazakov
2014-08-02 14:34 ` Robert A Duff
2014-08-02 16:56 ` Dmitry A. Kazakov
2014-08-02 20:35 ` Niklas Holsti
2014-08-03 7:30 ` Dmitry A. Kazakov
2014-08-04 9:24 ` Niklas Holsti
2014-08-04 10:42 ` G.B.
2014-08-04 11:39 ` Peter Chapin
2014-08-04 17:49 ` Niklas Holsti
2014-08-04 11:36 ` Peter Chapin
2014-08-04 12:43 ` Dmitry A. Kazakov
2014-08-04 16:19 ` G.B.
2014-08-04 16:38 ` Dmitry A. Kazakov
2014-08-04 16:51 ` G.B.
2014-08-04 17:23 ` Dmitry A. Kazakov
2014-08-04 19:37 ` Niklas Holsti
2014-08-05 8:30 ` Dmitry A. Kazakov
2014-08-05 19:24 ` Randy Brukardt
2014-08-03 16:35 ` Robert A Duff
2014-08-02 8:02 ` Jacob Sparre Andersen
2014-08-02 19:20 ` Shark8
2014-08-03 16:07 ` Default values (Was: Quick question regarding limited type return syntax) Jacob Sparre Andersen
2014-08-04 21:29 ` Randy Brukardt
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox