From: tmoran@acm.org
Subject: Re: Announce: Grace project site operational
Date: Wed, 15 May 2002 23:33:43 GMT
Date: 2002-05-15T23:33:43+00:00 [thread overview]
Message-ID: <rfCE8.2315$B76.161046673@newssvr14.news.prodigy.com> (raw)
In-Reply-To: 3CE15D0A.3050100@mail.com
> template<typename RepType, int Mass, int Distance, int Time>
> ...
The attempt below is is not as nice as "type Velocity is new Float
dimension Distance/Time;" and it needs parenthesization, but it works in
Ada 95. Each new unit requires a "type unit is <real type>" and each
legal pair needs two lines: a generic instantiation and a "use".
generic
type left is digits <>;
type right is digits <>;
type result is digits <>;
package multiply is
function "*"(a : left; b : right) return result;
function "*"(a : right; b : left) return result;
end multiply;
package body multiply is
function "*"(a : left; b : right) return result is
begin return result(float(a)*float(b));end "*";
function "*"(a : right; b : left) return result is
begin return result(float(a)*float(b));end "*";
end multiply;
generic
type left is digits <>;
type right is digits <>;
type result is digits <>;
package ratio is
function "/"(a : left; b : right) return result;
end ratio;
package body ratio is
function "/"(a : left; b : right) return result is
begin return result(float(a)/float(b));end "/";
end ratio;
with Multiply,Ratio;
procedure try_d is
type Seconds is new Float;
type Centimeters is new Float;
type Grams is digits 4;
type Velocity is new Float;
package Centimeters_per_Second is new Ratio(Centimeters, Seconds, Velocity);
use Centimeters_per_Second;
type Acceleration is new Float;
package Velocity_per_Second is new Ratio(Velocity, Seconds, Acceleration);
use Velocity_per_Second;
type Dynes is new Float;
package Grams_Acceleration is new Multiply(Grams, Acceleration, Dynes);
use Grams_Acceleration;
t : Seconds;
d : Centimeters range 0.0 .. 100.0;
v : Velocity;
m : Grams;
a : Acceleration;
f : Dynes;
x,y,z : Float;
begin
v := d/t;
a := v/t;
f := m*a;
f := m*(v/t);
x := float(d)*float(t);
y := d*t; -- line 35, erroneous
z := float(d*t); -- line 36, erroneous
end try_d;
gnatchop/gnatmake gives:
gcc -c try_d.adb
try_d.adb:35:09: invalid operand types for operator "*"
try_d.adb:35:09: left operand has subtype of "centimeters" defined at line 22
try_d.adb:35:09: right operand has type "Seconds" defined at line 5
try_d.adb:36:15: invalid operand types for operator "*"
try_d.adb:36:15: left operand has subtype of "centimeters" defined at line 22
try_d.adb:36:15: right operand has type "Seconds" defined at line 5
gnatmake: "try_d.adb" compilation error
next prev parent reply other threads:[~2002-05-15 23:33 UTC|newest]
Thread overview: 158+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-08 2:38 Announce: Grace project site operational Ted Dennison
2002-05-08 2:48 ` Larry Kilgallen
2002-05-08 12:46 ` Ted Dennison
2002-05-08 13:33 ` Marin David Condic
2002-05-09 19:54 ` Randy Brukardt
2002-05-09 20:22 ` Marin David Condic
2002-05-10 14:59 ` Ted Dennison
2002-05-10 18:54 ` Randy Brukardt
2002-05-10 14:17 ` Larry Hazel
2002-05-10 14:46 ` David C. Hoos
2002-05-10 15:38 ` Marin David Condic
2002-05-11 14:17 ` Preben Randhol
2002-05-11 16:58 ` martin.m.dowie
2002-05-11 18:55 ` William C. Brennan
2002-05-11 20:10 ` Preben Randhol
2002-05-12 8:53 ` martin.m.dowie
2002-05-13 13:18 ` Marin David Condic
2002-05-13 13:07 ` Marin David Condic
2002-05-14 15:18 ` Ted Dennison
2002-05-14 15:45 ` Marin David Condic
2002-05-15 19:56 ` Hyman Rosen
2002-05-16 13:44 ` Stephen Leake
2002-05-14 17:02 ` Martin Dowie
2002-05-15 14:57 ` Ted Dennison
2002-05-15 15:31 ` Marin David Condic
2002-05-16 21:57 ` tmoran
2002-05-17 1:55 ` tmoran
2002-05-17 13:12 ` Marin David Condic
2002-05-18 1:44 ` tmoran
2002-05-15 15:54 ` Martin Dowie
2002-05-15 17:33 ` Larry Kilgallen
2002-05-15 17:04 ` David C. Hoos
2002-05-15 22:59 ` tmoran
2002-05-16 13:36 ` Marin David Condic
2002-05-16 13:43 ` Ted Dennison
2002-05-16 14:51 ` Marin David Condic
2002-05-17 15:34 ` Stephen Leake
2002-05-20 13:47 ` Marin David Condic
2002-05-21 14:23 ` Stephen Leake
2002-05-21 17:24 ` Ted Dennison
2002-05-21 17:52 ` Marin David Condic
2002-05-22 16:20 ` Stephen Leake
2002-05-28 8:22 ` Martin Dowie
2002-05-22 16:16 ` Stephen Leake
2002-05-16 11:06 ` John English
2002-05-16 13:52 ` Stephen Leake
2002-05-16 16:40 ` Hyman Rosen
2002-05-14 17:50 ` tmoran
2002-05-14 18:07 ` Preben Randhol
2002-05-14 18:12 ` Preben Randhol
2002-05-14 18:52 ` Hyman Rosen
2002-05-15 8:17 ` Dmitry A. Kazakov
2002-05-15 18:30 ` Hyman Rosen
2002-05-16 9:16 ` Dmitry A. Kazakov
2002-05-16 19:42 ` Hyman Rosen
2002-05-17 8:35 ` Dmitry A. Kazakov
2002-05-20 17:08 ` Hyman Rosen
2002-05-21 8:34 ` Dmitry A. Kazakov
2002-05-21 15:57 ` Hyman Rosen
2002-05-22 7:48 ` Dmitry A. Kazakov
2002-05-22 11:40 ` Georg Bauhaus
2002-05-22 15:05 ` Dmitry A. Kazakov
2002-05-22 16:14 ` Georg Bauhaus
2002-05-22 16:31 ` Hyman Rosen
2002-05-23 11:40 ` Dmitry A. Kazakov
2002-05-15 8:44 ` Martin Dowie
2002-05-15 18:15 ` Stephen Leake
2002-05-15 18:39 ` Darren New
2002-05-15 19:34 ` Hyman Rosen
2002-05-15 23:52 ` Darren New
2002-05-16 7:39 ` Hyman Rosen
2002-05-16 15:35 ` Darren New
2002-05-16 17:55 ` Brian Rogoff
2002-05-16 13:35 ` Stephen Leake
2002-05-16 15:50 ` Darren New
2002-05-16 16:28 ` Hyman Rosen
2002-05-17 15:14 ` Stephen Leake
2002-05-17 16:08 ` Darren New
2002-05-17 16:41 ` Fraser Wilson
2002-05-17 16:43 ` Stephen Leake
2002-05-17 16:24 ` Marin David Condic
2002-05-17 15:03 ` Fraser Wilson
2002-05-17 15:27 ` Stephen Leake
2002-05-17 16:20 ` Fraser Wilson
2002-05-17 16:46 ` Stephen Leake
2002-05-18 6:14 ` Simon Wright
2002-05-17 15:44 ` Mark Biggar
2002-05-17 16:09 ` Fraser Wilson
2002-05-17 16:48 ` Stephen Leake
2002-05-17 21:11 ` Mark Biggar
2002-05-21 8:45 ` Dmitry A. Kazakov
2002-05-15 19:24 ` Hyman Rosen
2002-05-15 23:33 ` tmoran [this message]
2002-05-16 13:48 ` Stephen Leake
2002-05-16 14:39 ` Martin Dowie
2002-05-14 19:10 ` tmoran
2002-05-14 19:58 ` Preben Randhol
2002-05-11 19:42 ` Jeffrey Carter
2002-05-11 20:16 ` Preben Randhol
2002-05-11 19:49 ` Jeffrey Carter
2002-05-13 15:44 ` Ted Dennison
2002-05-13 16:16 ` Marin David Condic
2002-05-13 17:10 ` Stephen Leake
2002-05-13 19:07 ` Preben Randhol
2002-05-13 20:21 ` Marin David Condic
2002-05-14 15:00 ` Ted Dennison
2002-05-14 16:00 ` Stephen Leake
2002-05-14 16:30 ` Preben Randhol
2002-05-13 19:16 ` Jeffrey Carter
2002-05-13 19:19 ` Simon Wright
2002-05-11 1:23 ` Richard Riehle
2002-05-11 12:27 ` Marc A. Criley
2002-05-08 16:12 ` Hyman Rosen
2002-05-08 16:31 ` Larry Kilgallen
2002-05-08 17:16 ` Marin David Condic
2002-05-09 9:50 ` Larry Kilgallen
2002-05-09 13:32 ` Marin David Condic
2002-05-09 13:54 ` Ted Dennison
2002-05-09 14:23 ` Mário Amado Alves
2002-05-09 20:02 ` Randy Brukardt
2002-05-09 20:44 ` Marin David Condic
2002-05-10 13:06 ` Hyman Rosen
2002-05-10 16:23 ` Preben Randhol
2002-05-10 18:57 ` Hyman Rosen
2002-05-10 18:58 ` Randy Brukardt
2002-05-10 8:35 ` Dmitry A. Kazakov
2002-05-10 9:12 ` GRACE web site (was Announce: Grace project site operationa)l David C. Hoos, Sr.
2002-05-10 14:33 ` Ted Dennison
2002-05-10 16:17 ` Preben Randhol
2002-05-13 14:07 ` Ted Dennison
2002-05-13 16:04 ` Darren New
2002-05-10 19:00 ` Announce: Grace project site operational Randy Brukardt
2002-05-13 8:10 ` Dmitry A. Kazakov
2002-05-10 19:35 ` Ted Dennison
2002-05-13 8:01 ` Dmitry A. Kazakov
2002-05-10 10:25 ` Mário Amado Alves
2002-05-09 20:53 ` Simon Wright
2002-05-10 8:29 ` Dmitry A. Kazakov
2002-05-14 15:03 ` John English
2002-05-15 8:34 ` Dmitry A. Kazakov
2002-05-15 10:38 ` John English
2002-05-15 11:18 ` Dmitry A. Kazakov
2002-05-15 18:10 ` Stephen Leake
2002-05-09 14:03 ` Wes Groleau
2002-05-09 15:38 ` Marin David Condic
2002-05-11 18:10 ` William C. Brennan
2002-05-08 22:00 ` Ted Dennison
2002-05-09 5:39 ` Hyman Rosen
2002-05-09 14:21 ` Wes Groleau
2002-05-25 22:03 ` Robert I. Eachus
2002-05-08 14:32 ` Stephen Leake
2002-05-10 14:46 ` Ted Dennison
2002-05-10 7:47 ` fraser
2002-05-10 14:55 ` Ted Dennison
-- strict thread matches above, loose matches on Subject: below --
2002-05-15 9:58 Grein, Christoph
2002-05-15 16:12 ` Ted Dennison
2002-05-15 11:32 Grein, Christoph
2002-05-15 13:41 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox