comp.lang.ada
 help / color / mirror / Atom feed
From: Adam Beneschan <adam@irvine.com>
Subject: Re: Lack of formal syntax undermines Ada
Date: Fri, 11 Apr 2008 16:08:12 -0700 (PDT)
Date: 2008-04-11T16:08:12-07:00	[thread overview]
Message-ID: <ea84dc3f-a0c6-4c05-aa08-5cf434c30e15@b9g2000prh.googlegroups.com> (raw)
In-Reply-To: i0qvv3dev17eh98a6bpunaf0ur5o8d33tc@4ax.com

On Apr 11, 3:37 pm, John McCabe <j...@nospam.assen.demon.co.uk.nospam>
wrote:
> Robert A Duff <bobd...@shell01.TheWorld.com> wrote:
>
> >John McCabe <j...@nospam.assen.demon.co.uk.nospam> writes:
>
> >> As I understand it, that was deliberate; Ada's feature that functions
> >> may not have side-effects ...
>
> >Ada functions can have side effects.
>
> Bugger - where did I get that idea from then (have to admit, it's been
> a while since I paid a lot of attention to Ada!)

There was an early, pre-1983, version of Ada that had a rule that
functions couldn't have side effects; this version also had "value-
returning procedures" for those cases where you really needed
something that could have side effects with the syntax of a function.
(I think value-returning procedures were allowed to have what are now
referred to as OUT and IN OUT parameters, but I'm not sure.)  Since I
don't remember a rule that functions weren't allowed to call
procedures, I don't know how they expected the side-effect rule to be
enforced; maybe the authors figured they could just decree it to be so
and stick implementors with the burden of figuring out how.
Thankfully, that got dropped before the language became a standard.

This was a long time ago, so of course my memory is hazy.  I haven't
looked to see if this draft version of Ada exists somewhere on the
Internet.

                                -- Adam



  reply	other threads:[~2008-04-11 23:08 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-11  9:41 Lack of formal syntax undermines Ada usenet
2008-04-11 11:20 ` Peter C. Chapin
2008-04-15 12:57   ` usenet
2008-04-16  2:26     ` Peter C. Chapin
2008-04-16  3:14       ` Eric Hughes
2008-04-17  6:37     ` Randy Brukardt
2008-04-11 17:27 ` Georg Bauhaus
2008-04-11 18:13   ` Adam Beneschan
2008-04-11 21:25 ` John McCabe
2008-04-11 21:45   ` Robert A Duff
2008-04-11 22:37     ` John McCabe
2008-04-11 23:08       ` Adam Beneschan [this message]
2008-04-12  7:16         ` Dirk Craeynest
2008-04-14  7:23         ` Jean-Pierre Rosen
2008-04-12 12:57       ` Robert A Duff
2008-04-12 15:06         ` (see below)
2008-04-12 16:25           ` John McCabe
2008-04-12 17:55             ` (see below)
2008-04-12 22:19               ` John McCabe
2008-04-13  1:13                 ` (see below)
2008-04-13 11:51                   ` John McCabe
2008-04-13 14:13                     ` (see below)
2008-04-13 19:34                       ` John McCabe
2008-04-13 20:51                         ` (see below)
2008-04-13 21:06                           ` John McCabe
2008-04-12 17:16         ` Gary Scott
2008-04-12 18:43           ` Peter C. Chapin
2008-04-12 19:16             ` Gary Scott
2008-04-12 20:04               ` Robert A Duff
2008-04-12 23:32                 ` Gary Scott
2008-04-13  1:16                   ` Robert A Duff
2008-04-12 20:02           ` Robert A Duff
2008-04-12 20:52             ` Pascal Obry
2008-04-13 22:01       ` Florian Weimer
2008-04-13  9:46 ` anon
2008-04-15 13:22   ` usenet
2008-04-15 16:08     ` Adam Beneschan
2008-04-13 22:04 ` Florian Weimer
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox