comp.lang.ada
 help / color / mirror / Atom feed
From: cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!portal!cup.portal
Subject: Re: What's the difference between...
Date: 15 Feb 93 01:55:33 GMT	[thread overview]
Message-ID: <75650@cup.portal.com> (raw)

In article: <C2GFBx.GJH@irvine.com>
	adam@irvine.com (Adam Beneschan) wrote:
>In article <75591@cup.portal.com> R_Tim_Coslet@cup.portal.com writes:
>> Actually, if you know you are going to be multiplying mixed types
>> (e.g. APPLES in a crate by CRATES to get APPLES in a shipment) just
>> define a new multiply operator on the mixed types so the "conversion"
>> is hidden and "units" are enforced by the compiler.
>>
>>                                         R. Tim Coslet
>
>This only solves part of the problem, though.  It's no problem to
>define this function: 
>
>    function "*" (left : APPLES;  right : CRATES) return APPLES;
>
>But ideally, you'd like a way to prevent the programmer from doing
>something dumb like multiplying apples and apples.

Well, if you REALLY want this level of control, creat a package with all
your types in it and make them PRIVATE and only define the operations
that are actually physically correct. Then the compiler catches everything
at compile time.

                                        R. Tim Coslet

Usenet: R_Tim_Coslet@cup.portal.com
        technology, n.  domesticated natural phenomena

             reply	other threads:[~1993-02-15  1:55 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1993-02-15  1:55 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!portal!cup.portal [this message]
  -- strict thread matches above, loose matches on Subject: below --
1993-02-16 17:34 What's the difference between John Bollenbacher
1993-02-16 16:17 enterpoop.mit.edu!ira.uka.de!scsing.switch.ch!sicsun!disuns2!lglsun!kipfe
1993-02-16 15:03 Robert I. Eachus
1993-02-15 13:24 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!darwin.sura.net!haven.umd.ed
1993-02-14 19:55 Adam Beneschan
1993-02-14  3:08 agate!spool.mu.edu!sdd.hp.com!portal!cup.portal.com!R_Tim_Coslet
1993-02-13 19:18 agate!spool.mu.edu!hri.com!noc.near.net!inmet!spock!stt
1993-02-13  5:30 Alex Blakemore
1993-02-12 23:57 Mark A Biggar
1993-02-12 23:51 kronos.arc.nasa.gov!butch!LMSC5.IS.LMSC.LOCKHEED.COM!LJ10891
1993-02-12 22:58 Robert I. Eachus
1993-02-12 18:52 Kenneth Anderson
replies disabled

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