comp.lang.ada
 help / color / mirror / Atom feed
From: Jeffrey Carter <jrcarter@acm.org>
Subject: Re: ASCL a doomed idea?
Date: Wed, 12 Dec 2001 04:21:18 GMT
Date: 2001-12-12T04:21:18+00:00	[thread overview]
Message-ID: <3C16DB37.A0F02702@acm.org> (raw)
In-Reply-To: MZoR7.30524$wL4.108797@rwcrnsc51

Mark Lundquist wrote:
> 
> I have a tool in my garden shed.  It's basically a trencher, but with a
> double head -- you reverse it and it's like a three-tined hoe.  This tool is
> called a "cultivator" -- that's what the hardware store calls it, anyway (I
> used to call it a "hoedag", and still do, just to irritate my wife :-).

So you have a combination trenching tool and hoe that someone misnamed a
"cultivator". And your point is?

> Alexader Stepanov came up with this idea for how to write a suite of
> collection classes, where the collection operations were *not* primitives of
> the collections.  That way, the implementations of the collection operations
> can be reused, i.e. shared across many collection types, instead of having
> to be written custom-like for each one, and it allows the functionality of
> the collection classes to be extended without the limitations of using
> inheritance for the extension.  The collections he calls "containers" and
> the operations he calls "algorithms".  The coupling mechanism between the
> two is an abstraction he calls an "iterator".  Now, this idea is embodied in
> the Standard Template Library for a language called "C++", which many, many
> programmers in this quadrant know (or at least are able to claim to know
> enough to get hired).  As a result, most sentient beings in the galaxy are
> familiar with the concept of an "iterator" as the coupler between containers
> and algorithms.

Oh, I get it now. Since C++ got it wrong, Ada should get it wrong to be
compatible with C++. An excellent idea. Along the same lines, I suggest
removing type checking from Ada, and replacing "begin" and "end" with
{}. We'd better introduce the reserved words "class" and "friend" while
we're at it.

> And I can't say much for your choice of name for the itera... I mean, the
> uh... the dookus.  "Position" is what you call it, right?

"Position" is what it's usually called in the data structures literature
in describing the abstraction called a list.

-- 
Jeff Carter
"My brain hurts!"
Monty Python's Flying Circus



  parent reply	other threads:[~2001-12-12  4:21 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-06 20:26 ASCL a doomed idea? Michael Erdmann
2001-12-06 20:49 ` Mark Lundquist
2001-12-09 19:07   ` Nick Roberts
2001-12-09 21:37     ` Jeffrey Carter
2001-12-10 19:36       ` Nick Roberts
2001-12-10 22:37         ` Jeffrey Carter
2001-12-10 23:30           ` Chad R. Meiners
2001-12-11  1:42             ` Jeffrey Carter
2001-12-11  3:40               ` Chad R. Meiners
2001-12-11 14:45           ` Mark Lundquist
2001-12-11 15:06             ` Ted Dennison
2001-12-11 15:09               ` Jean-Marc Bourguet
2001-12-11 17:18               ` Stephen Leake
2001-12-12  4:29               ` Jeffrey Carter
2001-12-12 14:40                 ` Ted Dennison
2001-12-11 15:25             ` Larry Hazel
2001-12-12  4:21             ` Jeffrey Carter [this message]
2001-12-12 14:32               ` Stephen Leake
2001-12-12 19:40               ` Mark Lundquist
2001-12-16 13:23               ` Georg Bauhaus
2001-12-11 14:45         ` Mark Lundquist
2001-12-11 15:11           ` Ted Dennison
2001-12-11 17:43             ` Nick Roberts
2001-12-12  0:37               ` Mark Lundquist
2001-12-12  4:31           ` Jeffrey Carter
2001-12-11 22:45         ` Mark Lundquist
2001-12-12  1:39           ` Nick Roberts
2001-12-12 10:08             ` Ian Wild
2001-12-12 17:03               ` Nick Roberts
2001-12-12 22:09                 ` Brian Rogoff
2001-12-12 14:34             ` Marin David Condic
2001-12-11 14:45       ` Mark Lundquist
2001-12-12  4:32         ` Jeffrey Carter
2001-12-12 14:48           ` Ted Dennison
2001-12-12 17:02           ` Nick Roberts
replies disabled

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