comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Records that could be arrays
Date: Fri, 24 Feb 2006 15:23:51 -0600
Date: 2006-02-24T15:23:51-06:00	[thread overview]
Message-ID: <KqSdnZXQUfnZ5WLenZ2dnUVZ_smdnZ2d@megapath.net> (raw)
In-Reply-To: u8xs2xm0l.fsf@toadmail.com

"Stephen Leake" <stephe_on_the_web@toadmail.com> wrote in message
news:u8xs2xm0l.fsf@toadmail.com...
> Justin Gombos <rpbkbq.xax.gld@uluv.kbq> writes:
>
> > I noticed this example code in 5.4.4 of the Ada Quality and Style
> > Guide:
> >
> >   type Coordinate is
> >      record
> >         Row    : Local_Float;
> >         Column : Local_Float;
> >      end record;
> >
> >   type Window is
> >      record
> >         Top_Left     : Coordinate;
> >         Bottom_Right : Coordinate;
> >      end record;
> >
> > Would anyone here write something like that?
>
> Yes; Windex has it. Although if I was rewriting it from scratch now,
> I might use an array.

Claw also has types like this:

    type Point_Type is record
        X, Y       : Int;
    end record;

    type Size_Type is record
        Width, Height       : Int; -- Width=X_Size, Height=Y_Size.
    end record;

    type Rectangle_Type is record
        Left, Top,  Right, Bottom  : Int;
    end record;

That's partly because we're matching the Windows definitions for these
types, but also because these "feel" like records to me. I generally only
use arrays when I'm storing a number of identical items with identical uses
(although ordering may matter); "Left" and "Bottom" hardly have the same
meaning or use, even though they have the same type and sometimes need to be
combined.

And its certainly easier to change just one if it isn't an array.

                   Randy.






  parent reply	other threads:[~2006-02-24 21:23 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-23  4:11 Records that could be arrays Justin Gombos
2006-02-23  4:51 ` tmoran
2006-02-23 13:19   ` Justin Gombos
2006-02-24 10:19     ` Stephen Leake
2006-02-23  6:32 ` Wilhelm Spickermann
2006-02-23 13:08   ` Stephen Leake
2006-02-23 13:20   ` Justin Gombos
2006-02-23 14:29     ` Wilhelm Spickermann
2006-02-24 10:31       ` Stephen Leake
2006-02-26 22:34         ` Wilhelm Spickermann
2006-02-23  8:21 ` john Doef
2006-02-23  9:22 ` Jean-Pierre Rosen
2006-02-23 13:11   ` Stephen Leake
2006-02-23 13:37   ` Justin Gombos
2006-02-23 13:06 ` Stephen Leake
2006-02-23 20:23   ` Simon Wright
2006-02-24 21:23   ` Randy Brukardt [this message]
2006-02-25 11:39     ` Dmitry A. Kazakov
2006-02-26  3:24       ` Steve Whalen
2006-02-26  9:51         ` Dmitry A. Kazakov
2006-02-27  2:26           ` Steve Whalen
2006-02-27  9:33             ` Dmitry A. Kazakov
2006-03-01 22:44             ` Robert A Duff
replies disabled

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