From: Georg Bauhaus <sb463ba@l1-hrz.uni-duisburg.de>
Subject: Re: Concatenation and Characters
Date: Tue, 22 Oct 2002 14:43:37 +0000 (UTC)
Date: 2002-10-22T14:43:37+00:00 [thread overview]
Message-ID: <ap3o6p$5sl$1@a1-hrz.uni-duisburg.de> (raw)
In-Reply-To: slrnaragj2.uu.lutz@taranis.iks-jena.de
Lutz Donnerhacke <lutz@iks-jena.de> wrote:
: * Georg Bauhaus wrote:
:> o.K. it is not built into the language, but a syntactically valid
:> subprogram a la
:>
:> procedure fill(bowl: out glass; filled: out boolean);
:>
:> does inform readers about a potentially unsatisfying dring?
:
: It raises EDONTDRINKANDDRIVE.
No it doesn't :)
package drinks is
EDONTDRINKANDDRIVE: exception;
-- everyone knows this
subtype up_to is float range 0.0..1.1365;
-- filling glasses looks more honest in Britain
type vessel is
tagged record
watermark: up_to := 0.0;
end record;
procedure refill(v: in out vessel);
-- might raise EDONTDRINKANDDRIVE under some circumstances
type glass is new vessel with null record;
-- it's for humans, otherwise we might want saucers, buckets, troughs.
-- (Or vats in case of a famous monk.) (Is it true that
-- beer is served from tubs in some rural Irish pubs?)
procedure fill(cupped: in out glass'class; filled: out boolean);
-- `cupped` is filled iff `filled = true` on return
end drinks;
package body drinks is
generous: constant := 0.9463;
-- US bar keeper in continental Europe (that's
-- _more_ than what you might get here, when comparing
-- liquid level to glass height.)
must_drive_home: constant boolean:= false;
-- an accidential circumstance of life
procedure refill(v: in out vessel) is
begin
if must_drive_home then
raise EDONTDRINKANDDRIVE;
end if;
v.watermark := generous;
end refill;
procedure fill (cupped: in out glass'class; filled: out boolean) is
begin
refill(cupped);
filled := true;
exception
-- ...
when others => -- including EDONTDRINKANDDRIVE:
filled := false;
end fill;
end drinks;
-- georg
next prev parent reply other threads:[~2002-10-22 14:43 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-10-10 14:50 Concatenation and Characters Justin Birtwell
2002-10-10 14:55 ` Preben Randhol
2002-10-10 15:04 ` Justin Birtwell
2002-10-10 15:22 ` Preben Randhol
2002-10-10 15:30 ` Justin Birtwell
2002-10-10 16:05 ` Georg Bauhaus
2002-10-10 16:07 ` Preben Randhol
2002-10-10 17:45 ` Robert A Duff
2002-10-10 15:32 ` Justin Birtwell
2002-10-10 15:36 ` Preben Randhol
2002-10-10 16:44 ` Mark Biggar
2002-10-10 17:45 ` Stephen Leake
2002-10-10 21:53 ` Mark Biggar
2002-10-18 17:03 ` Programmer Dude
2002-10-18 18:13 ` Preben Randhol
2002-10-18 18:36 ` Wes Groleau
2002-10-21 15:16 ` Georg Bauhaus
2002-10-18 21:33 ` Mark Biggar
2002-10-20 2:01 ` Dmitry A.Kazakov
2002-10-21 14:13 ` Wes Groleau
2002-10-21 15:22 ` Dmitry A. Kazakov
2002-10-21 19:38 ` Georg Bauhaus
2002-10-22 22:15 ` Dmitry A.Kazakov
2002-10-22 12:05 ` Georg Bauhaus
2002-10-22 12:19 ` Lutz Donnerhacke
2002-10-22 14:43 ` Georg Bauhaus [this message]
2002-10-23 8:39 ` Dmitry A. Kazakov
2002-10-23 14:39 ` Georg Bauhaus
2002-10-24 8:18 ` Dmitry A. Kazakov
2002-10-21 16:50 ` Warren W. Gay VE3WWG
2002-10-21 15:20 ` Georg Bauhaus
2002-10-21 17:51 ` Programmer Dude
2002-10-21 18:48 ` Jim Rogers
2002-10-21 19:44 ` tmoran
2002-10-21 20:42 ` Programmer Dude
2002-10-22 1:42 ` Jeffrey Carter
2002-10-22 14:37 ` Robert A Duff
2002-10-22 18:51 ` Jeffrey Carter
2002-10-23 7:01 ` Pascal Obry
2002-10-22 14:45 ` Matthew Heaney
2002-10-22 18:47 ` Jeffrey Carter
2002-10-22 21:31 ` Robert A Duff
[not found] ` <3DB59D75.20609 <wccd6q29n3l.fsf@shell01.TheWorld.com>
2002-10-23 2:02 ` Jeffrey Carter
2002-10-23 13:16 ` Matthew Heaney
2002-10-23 19:11 ` Jeffrey Carter
2002-10-23 15:24 ` Robert A Duff
2002-10-23 19:24 ` Jeffrey Carter
2002-10-24 0:33 ` Robert A Duff
2002-10-22 3:46 ` Jim Rogers
2002-10-22 14:48 ` Robert A Duff
2002-10-22 15:02 ` Fraser Wilson
2002-10-22 15:38 ` David C. Hoos
2002-10-22 15:44 ` Fraser Wilson
2002-10-22 16:13 ` Robert A Duff
2002-10-23 8:58 ` Dmitry A. Kazakov
2002-10-23 9:08 ` Lutz Donnerhacke
2002-10-23 9:34 ` Dmitry A. Kazakov
2002-10-23 10:10 ` Lutz Donnerhacke
2002-10-23 17:15 ` Frank J. Lhota
2002-10-24 8:41 ` Dmitry A. Kazakov
2002-10-24 9:25 ` Fraser Wilson
2002-10-24 14:13 ` Matthew Heaney
[not found] ` <un <wcc7kgazc20.fsf@shell01.TheWorld.com>
2002-10-22 16:46 ` David C. Hoos
2002-10-22 8:51 ` Stuart Palin
2002-10-22 18:56 ` Programmer Dude
2002-10-21 19:42 ` Georg Bauhaus
-- strict thread matches above, loose matches on Subject: below --
2002-10-11 5:04 Grein, Christoph
2002-10-11 10:30 ` Preben Randhol
2002-10-23 5:15 Grein, Christoph
2002-10-23 13:19 ` Matthew Heaney
2002-10-24 5:53 Grein, Christoph
2002-10-24 14:04 ` Matthew Heaney
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox