From: Robert Matthews <ignored@ramatthews.free-online.co.uk>
Subject: Re: Question on types conversions - operations
Date: Sat, 13 Jun 2009 17:13:35 +0100
Date: 2009-06-13T17:13:35+01:00 [thread overview]
Message-ID: <aeKdnW8pnb6FTa7XnZ2dnUVZ8m6dnZ2d@brightview.co.uk> (raw)
In-Reply-To: 4a33cb0b$0$2848$ba620e4c@news.skynet.be
Olivier Scalbert wrote:
> Hello,
>
> I have the following three types:
> type Length is new Float;
> type Time is new Float;
> type Speed is new Float;
>
> Suppose I need to compute a speed given a length and a time.
>
> L: Length := 100.0;
> T: Time := 10.0;
> S: Speed;
>
> How to do that ?
>
> With S := Speed(Float(L) / Float(T)) ? Mmmm ... not nice.
>
> With S := Speed(L / Length(T)), I am also not satisfy as I convert a
> time in Length ...
>
> I am sure you have better ideas !
>
> Good weekend,
>
> Olivier
For some software with a LOT of maths, I used:
type Working_Real_Type is digits 16;
(which was big enough for the VAX target).
I would convert the various values (typed in a similar
way to your Length, Time etc) to Working_Real_Type
before using them in the equations. It was certainly
not ideal but it seemed a reasonable compromise between
type safety and the maths.
Robert
next prev parent reply other threads:[~2009-06-13 16:13 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-13 15:51 Question on types conversions - operations Olivier Scalbert
2009-06-13 16:13 ` Robert Matthews [this message]
2009-06-13 16:55 ` anon
2009-06-13 16:58 ` Dmitry A. Kazakov
2009-06-13 16:59 ` sjw
2009-06-13 17:24 ` Martin
2009-06-13 19:35 ` sjw
2009-06-14 8:22 ` sjw
2009-06-15 8:40 ` Jean-Pierre Rosen
2009-06-15 9:30 ` Olivier Scalbert
2009-06-15 9:51 ` stefan-lucks
2009-06-15 10:33 ` AdaMagica
2009-06-15 19:37 ` sjw
2009-06-13 19:56 ` Jeffrey R. Carter
2009-06-14 15:55 ` Robert A Duff
2009-06-15 8:52 ` AdaMagica
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox