comp.lang.ada
 help / color / mirror / Atom feed
* New limited range type?
@ 2003-11-07 15:51 Martin Dowie
  2003-11-07 15:57 ` Hyman Rosen
  2003-11-07 18:05 ` Mike Silva
  0 siblings, 2 replies; 25+ messages in thread
From: Martin Dowie @ 2003-11-07 15:51 UTC (permalink / raw)


Ok, as we're in "my favourite thing I'd like in Ada" season, here's mine...

I'd like to be able to declare integer/float/fixed/decimal types that are
limited, at both ends, and never raise exceptions, e.g.

   type Safe_Degrees is
      digits 6 limited range -180.0 .. +180.0;  -- new use of 'limited'

such that

declare
   A, B, C : Safe_Degrees;
begin
   B := 170.0;
   C := 50.0;
   A := B + C;
   -- A equals +180.0 after this statement
   ...
end;

We limit values like this all the time (we're not allowed exceptions)
and although we can write and instantiate generics to help, it's still
a pain.

Could even prove useful in things like SPARK?

Flames welcome! :-)





^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2003-11-12 17:37 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-11-07 15:51 New limited range type? Martin Dowie
2003-11-07 15:57 ` Hyman Rosen
2003-11-07 16:20   ` Martin Dowie
2003-11-07 16:36     ` Stephane Richard
2003-11-07 16:59     ` Hyman Rosen
2003-11-07 18:18       ` Martin Dowie
2003-11-07 20:11         ` Larry Hazel
2003-11-07 22:40           ` Martin Dowie
2003-11-07 23:31             ` Larry Hazel
2003-11-12  8:22       ` Jean-Pierre Rosen
2003-11-12 15:00         ` Hyman Rosen
2003-11-12 15:34           ` Robert I. Eachus
2003-11-12 17:37             ` tmoran
2003-11-07 18:19   ` Mike Silva
2003-11-07 19:03   ` Marin David Condic
2003-11-07 18:05 ` Mike Silva
2003-11-08 21:58   ` Nick Roberts
2003-11-09 14:34     ` Martin Dowie
2003-11-11  5:13       ` Nick Roberts
2003-11-11 10:18         ` Martin Dowie
2003-11-11 10:35         ` Martin Dowie
2003-11-11 10:41           ` Lutz Donnerhacke
2003-11-11 12:37             ` Marin David Condic
2003-11-11 14:19             ` Martin Dowie
2003-11-11 12:34           ` Marin David Condic

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