From: Bryce Bardin <bbardin@home.com>
Subject: Re: Disallowing Pre-Defined Operations
Date: 2000/03/16
Date: 2000-03-16T00:00:00+00:00 [thread overview]
Message-ID: <38D06B59.7EA0E4B3@home.com> (raw)
In-Reply-To: 38D001D7.4D6E4284@averstar.com
Tucker Taft wrote:
> ... Personally, I would like a full-up
> "units" capability, where generally A * A => A is not defined, since
> that doesn't balance from a units point of view. I have some ideas
> how to get there, and would be interested in opinions from others.
> The techniques using discriminants are unsatisfactory in my view,
> and too "heavy." VHDL has the notion of "units" built into the language,
> and its approach should probably be evaluated.
I have always felt that a full-up, type-safe, compile-time-checked,
units capability is the one potential "killer" capability that has
the potential to make Ada the language of choice for engineers and
scientists world-wide. But it must be *easy* to use (not feel
cumbersome) and have no run-time cost.
I believe that it should be based on the International System of Units
(SI), but also incorporate units conversion capabilities, so that
commonly used systems of engineering units can be gracefully
accommodated. I don't think that the number of underlying relations
would be prohibitive; see for instance:
http://physics.nist.gov/cuu/Units/units.html,
et seq.
If all units checking is performed in SI and the relationship
to the various systems of engineering units is implicitly known to
the compiler (or processor), dimensional checking is straightforward.
Mixed units calculations should be forbidden, absent appropriate
conversions.
What remains then is to determine how to specify the units on types
and values, and how to specify unit conversions. It is not clear to
me whether the basis of such a capability needs to be supplied within
the confines of the current language, or whether a "preprocessor"
acting on annotated source would be adequate.
Bryce Bardin
next prev parent reply other threads:[~2000-03-16 0:00 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-03-10 0:00 Disallowing Pre-Defined Operations Charles H. Sampson
2000-03-09 0:00 ` Keith Thompson
2000-03-09 0:00 ` Samuel T. Harris
2000-03-12 0:00 ` Steven Hovater
2000-03-10 0:00 ` mark_biggar
2000-03-10 0:00 ` Jean-Pierre Rosen
2000-03-11 0:00 ` Tarjei Tj�stheim Jensen
2000-03-11 0:00 ` James S. Rogers
2000-03-13 0:00 ` Tarjei T. Jensen
2000-03-13 0:00 ` Robert Dewar
2000-03-13 0:00 ` Keith Thompson
2000-03-15 0:00 ` Robert Dewar
2000-03-13 0:00 ` dmitry6243
2000-03-15 0:00 ` Charles H. Sampson
2000-03-15 0:00 ` Robert Dewar
2000-03-21 0:00 ` Charles H. Sampson
2000-03-21 0:00 ` Robert Dewar
2000-03-21 0:00 ` Robert A Duff
2000-03-12 0:00 ` claveman
2000-03-12 0:00 ` Robert A Duff
2000-03-13 0:00 ` Tarjei T. Jensen
2000-03-13 0:00 ` Robert Dewar
2000-03-13 0:00 ` Robert A Duff
2000-03-15 0:00 ` Charles H. Sampson
2000-03-15 0:00 ` Tucker Taft
2000-03-15 0:00 ` Paul Graham
2000-03-16 0:00 ` Charles Hixson
2000-03-17 0:00 ` Paul Graham
2000-03-17 0:00 ` Charles Hixson
2000-03-18 0:00 ` Robert Dewar
2000-03-20 0:00 ` Charles Hixson
2000-03-20 0:00 ` Robert Dewar
2000-03-16 0:00 ` Robert Dewar
2000-03-16 0:00 ` Bryce Bardin [this message]
2000-03-16 0:00 ` Tarjei T. Jensen
2000-03-16 0:00 ` mark_biggar
2000-03-16 0:00 ` Dale Stanbrough
2000-03-17 0:00 ` Robert A Duff
2000-03-13 0:00 ` Ted Dennison
2000-03-14 0:00 ` Nick Roberts
2000-03-15 0:00 ` Robert Dewar
2000-03-17 0:00 ` William A Whitaker
2000-03-18 0:00 ` Robert Dewar
2000-03-22 0:00 ` William A Whitaker
2000-03-23 0:00 ` Robert Dewar
2000-04-06 0:00 ` Robert I. Eachus
2000-04-05 0:00 ` Marin D. Condic
2000-04-06 0:00 ` Robert Dewar
2000-04-06 0:00 ` Marin D. Condic
2000-04-07 0:00 ` dale
2000-04-07 0:00 ` Marin D. Condic
2000-04-07 0:00 ` Tarjei T. Jensen
2000-04-07 0:00 ` Marin D. Condic
2000-04-07 0:00 ` tmoran
2000-04-07 0:00 ` Marin D. Condic
2000-04-08 0:00 ` Vladimir Olensky
2000-04-08 0:00 ` Vladimir Olensky
2000-04-08 0:00 ` Dale Stanbrough
2000-04-10 0:00 ` Tarjei T. Jensen
2000-04-15 0:00 ` Niklas Holsti
2000-04-15 0:00 ` Marin D. Condic
2000-04-07 0:00 ` Robert Dewar
2000-04-07 0:00 ` Marin D. Condic
2000-04-09 0:00 ` Robert I. Eachus
2000-03-18 0:00 ` Robert Dewar
2000-03-18 0:00 ` Robert Dewar
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox