From: Tucker Taft <stt@averstar.com>
Subject: Re: very specific question on Ada syntax
Date: Tue, 30 Jan 2001 11:45:56 -0500
Date: 2001-01-30T16:45:56+00:00 [thread overview]
Message-ID: <3A76EFC4.585811F6@averstar.com> (raw)
In-Reply-To: mailman.980504596.2748.comp.lang.ada@ada.eu.org
Mario Amado Alves wrote:
>
> > len := Color'image(Color'first)'length;
>
> Yes, of course. Thanks. Just found an example in the RM itself:
>
> Rainbow'Base'First 4.1.4(16)
>
> This was because I was wondering if a character literal could be tokenized
> without context. I guess not. In
>
> A'B'C
>
> 'B' has the form of a character literal, but it is not it. I could perhaps
> rely on the fact (?) that there is no attribute of only one letter, but
> that is twisted to say the least.
Anyone who has built a production-quality Ada compiler will
know that distinguishing the attribute "'" from the character literal "'"..."'"
requires some special finagling. The technique most of us have
adopted is to keep track of whether the immediately prior token
can be the last token of a "name", and if so, interpret
the "'" as an attribute "tic" rather than as a character-literal "quote".
In particular, if the prior token is:
identifier
)
string-literal
ALL
character-literal
then a "'" should be interpreted as an attribute "tic"; otherwise
presume it is the beginning of a character literal.
>
> | |,| | | |RuaFranciscoTaborda24RcD 2815-249CharnecaCaparica 351+939354005
> |M|A|R|I|O|
> |A|M|A|D|O|DepartmentoDeInformaticaFCT/UNL 2825-114 Caparica 351+212958536
> |A|L|V|E|S| fax 212948541
> | | | | | | maa@di.fct.unl.pt FCT 212948300
--
-Tucker Taft stt@avercom.net http://www.averstar.com/~stt/
Chief Technology Officer, AverCom, Inc. (A Titan Company) Burlington, MA USA
(AverCom was formed 1/1/01 from the Commercial Division of AverStar)
(http://www.averstar.com/services/ebusiness_applications.html)
next prev parent reply other threads:[~2001-01-30 16:45 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <B6A1A9B09E52D31183ED00A0C9E0888C4699C9@nctswashxchg.nctswash.navy.mil>
[not found] ` <mailman.980504596.2748.comp.lang.ada@ada.eu.org>
2001-01-26 16:17 ` very specific question on Ada syntax Paul Graham
2001-01-26 16:38 ` Robert Dewar
2001-01-30 16:45 ` Tucker Taft [this message]
[not found] <200101261211.NAA13016@bulgaria.otn.eurocopter.de>
2001-01-26 17:17 ` Mario Amado Alves
2001-01-28 0:36 ` Robert Dewar
2001-01-29 11:11 ` Mario Amado Alves
2001-01-29 15:55 ` Ted Dennison
2001-01-29 16:41 ` Ted Dennison
2001-01-29 17:52 ` Mario Amado Alves
2001-01-30 6:26 ` Robert Dewar
[not found] <mailman.980516658.10759.comp.lang.ada@ada.eu.org>
[not found] ` <94s4vm$qr4$1@nnrp1.deja.com>
2001-01-26 20:26 ` Florian Weimer
2001-01-28 0:28 ` Robert Dewar
2001-01-30 8:47 ` Florian Weimer
2001-01-30 18:35 ` Robert Dewar
2001-01-30 22:16 ` Florian Weimer
2001-01-31 6:10 ` Robert Dewar
2001-01-31 13:29 ` Florian Weimer
2001-01-31 14:40 ` Marc A. Criley
2001-01-26 22:43 ` Paul Graham
2001-01-28 0:32 ` Robert Dewar
2001-01-30 6:28 Christoph Grein
2001-01-30 7:16 ` Jean-Pierre Rosen
2001-01-30 16:25 ` Mario Amado Alves
2001-01-30 17:57 ` Robert Dewar
2001-01-30 19:16 ` Ted Dennison
2001-01-31 6:16 ` Robert Dewar
2001-01-31 11:40 ` Mario Amado Alves
2001-01-31 22:09 ` Florian Weimer
2001-02-01 5:39 ` Robert Dewar
2001-02-01 5:39 ` Robert Dewar
2001-02-04 14:24 ` Florian Weimer
2001-02-01 5:38 ` Robert Dewar
2001-02-01 18:24 ` Mario Amado Alves
2001-02-02 3:52 ` Robert Dewar
2001-01-30 19:06 ` Ted Dennison
2001-01-31 6:18 ` Robert Dewar
2001-01-30 18:41 ` Robert Dewar
-- strict thread matches above, loose matches on Subject: below --
2001-01-30 7:19 Jean-Pierre Rosen
2001-01-30 9:30 Christoph Grein
2001-01-31 5:01 Christoph Grein
2001-01-31 6:02 ` Robert Dewar
2001-02-01 5:52 Christoph Grein
2001-02-01 6:25 ` Robert Dewar
2001-02-01 9:21 ` Keith Thompson
2001-02-01 7:14 Christoph Grein
2001-02-01 11:10 Christoph Grein
2001-02-01 17:58 ` Robert Dewar
2001-02-02 5:53 Christoph Grein
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox