comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: 64-bit unsigned integer?
Date: Wed, 28 Feb 2018 17:20:58 -0600
Date: 2018-02-28T17:20:58-06:00	[thread overview]
Message-ID: <p77dgq$i6o$1@franka.jacob-sparre.dk> (raw)
In-Reply-To: 877eqxe7u8.fsf@nightsong.com

"Paul Rubin" <no.email@nospam.invalid> wrote in message 
news:877eqxe7u8.fsf@nightsong.com...
> "Randy Brukardt" <randy@rrsoftware.com> writes:
>> The problem is simply one of language definition; there is no way in
>> the Ada language to get overflow for an unsigned type... These days,
>> we're moving away from adding any more kinds of types; everything new
>> will be a library much like the containers
>
> That seems unfortunate.  I hope the libraries can be implemented in a
> way that don't cause runtime overhead.

I don't see any reason why not. Just because something is in a library 
doesn't prevent it from using inlining, which then opens the door to all of 
the "normal" optimizations.

One of the main reason for the change to libraries is that we have a number 
of requests to add additional numeric functionality (unlimited-size integers 
["bignum"], saturation math) and dealing with all of those with dedicated 
types would add a load of built-in stuff and complications. (It also would 
make generic sharing much harder, possibly impossible, depending on the 
rules adopted.)

Libraries pretty much avoid all of that, and can be implemented as well (or 
poorly) as makes sense for an Ada vendor (meaning that they don't have to 
expend much in the way of resources on features not of interest to their 
customers).

                                                     Randy.



  parent reply	other threads:[~2018-02-28 23:20 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-25 12:30 64-bit unsigned integer? MM
2018-02-25 12:41 ` Dmitry A. Kazakov
2018-02-25 12:54   ` MM
2018-02-25 13:23     ` Dmitry A. Kazakov
2018-02-25 13:59       ` MM
2018-02-25 14:20         ` Dmitry A. Kazakov
2018-02-25 15:34           ` MM
2018-02-25 16:35     ` Jeffrey R. Carter
2018-02-25 16:36 ` Anh Vo
2018-02-25 17:31   ` MM
2018-02-26 23:19     ` Randy Brukardt
2018-02-26 23:33       ` MM
2018-02-28 10:17       ` Paul Rubin
2018-02-28 10:39         ` J-P. Rosen
2018-02-28 10:59           ` Dmitry A. Kazakov
2018-02-28 23:20         ` Randy Brukardt [this message]
2018-03-01  5:47           ` Paul Rubin
2018-03-01  8:16             ` Niklas Holsti
2018-03-01  8:35               ` Simon Wright
2018-03-01  8:47               ` Dmitry A. Kazakov
2018-03-01 18:15                 ` Dan'l Miller
2018-03-01 19:10                   ` Dmitry A. Kazakov
2018-03-01 19:22                     ` Dan'l Miller
2018-03-01 19:59                       ` Dmitry A. Kazakov
2018-03-01 20:32                         ` Dan'l Miller
2018-03-01 21:15                           ` Dmitry A. Kazakov
2018-03-01 22:23                             ` Randy Brukardt
2018-03-01 23:50                             ` Robert Eachus
2018-03-01 20:06                     ` Niklas Holsti
2018-03-01 22:04               ` Randy Brukardt
2018-02-26  6:45 ` Robert Eachus
2018-02-27 16:40   ` Dan'l Miller
2018-02-27 17:18     ` J-P. Rosen
2018-02-27 18:17       ` Dan'l Miller
2018-02-28  3:03         ` Robert Eachus
2018-02-28  6:41         ` J-P. Rosen
replies disabled

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