comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ranges and (non)static constraints
Date: Thu, 16 Nov 2006 14:13:58 +0100
Date: 2006-11-16T14:13:58+01:00	[thread overview]
Message-ID: <1pqs0gcno5o2t.1195tm9yap28b.dlg@40tude.net> (raw)
In-Reply-To: ejhgfn$jq9$1@cernne03.cern.ch

On Thu, 16 Nov 2006 12:02:15 +0100, Maciej Sobczak wrote:

> type T is range 1 .. N;
> type U is new Integer range 1 .. M;
> 
> N must be static, but M does not have to.
> Why and what is the real difference between T and U?

Informally, the second is an abbreviation for:

   type <anonymous> is new Integer;
   subtype U is <anonymous> range 1..M;

so "range" refers to a subtype. On the contrary, in the first, "range"
refers a type. So the difference.

Is it real? I don't think so. I would eliminate this difference between
types and subtypes by allowing the latter to have a different
representation than the base. So the first should be also an abbreviation
for

   type <anonymous> is new Universal_Integer;
   subtype T is <anonymous> range 1..N;

That would make both legal (or, maybe, illegal (:-)).

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



  parent reply	other threads:[~2006-11-16 13:13 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-16 11:02 Ranges and (non)static constraints Maciej Sobczak
2006-11-16 12:23 ` Martin Krischik
2006-11-16 13:23   ` Maciej Sobczak
2006-11-16 19:01     ` Jeffrey R. Carter
2006-11-18  0:02   ` Robert A Duff
2006-11-16 13:13 ` Dmitry A. Kazakov [this message]
2006-11-16 17:18   ` Jean-Pierre Rosen
2006-11-17  9:08     ` Dmitry A. Kazakov
2006-11-17 10:30       ` Stuart
2006-11-17 10:37       ` Jean-Pierre Rosen
2006-11-17 14:57         ` Dmitry A. Kazakov
2006-11-17 16:04           ` Jean-Pierre Rosen
2006-11-18  9:51             ` Dmitry A. Kazakov
2006-11-18 14:17             ` Stephen Leake
2006-11-17 20:05           ` Jeffrey R. Carter
2006-11-17 23:58             ` Robert A Duff
2006-11-18  9:47               ` Dmitry A. Kazakov
2006-11-19  2:27               ` Jeffrey R. Carter
2006-11-19 12:13                 ` Björn Persson
2006-11-19 22:51                 ` Robert A Duff
2006-11-20  3:51                   ` Jeffrey R. Carter
2006-11-21 21:02                     ` Robert A Duff
2006-11-20 17:35                   ` Adam Beneschan
2006-11-17 15:45         ` Maciej Sobczak
2006-11-17 16:45           ` Jean-Pierre Rosen
2006-11-17 10:39       ` AW: " Grein, Christoph (Fa. ESG)
2006-11-17 11:20         ` Dmitry A. Kazakov
2006-11-17 13:30           ` Stuart
2006-11-17 15:07             ` Dmitry A. Kazakov
2006-11-17 16:47               ` Jean-Pierre Rosen
2006-11-20 14:08               ` Stuart
2006-11-20 14:12                 ` Stuart
2006-11-20 15:48                   ` Dmitry A. Kazakov
2006-11-16 18:56   ` Jeffrey R. Carter
2006-11-16 20:00 ` Adam Beneschan
replies disabled

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