comp.std.c
[Top] [All Lists]

Re: extended operators

Subject: Re: extended operators
From: Tor Rustad
Date: Fri, 30 Nov 2007 22:47:24 +0100
Newsgroups: comp.std.c


Douglas A. Gwyn wrote:
Antoine Leca wrote:

[...]

Bottom line, trigraph were not the panacea it should have been;
as such, it did not enjoy much usage.

Primarily, trigraphs were not needed for most programming
environments.  I don't have good information about their
acceptance in those few environments that were known to have
real problems with those characters.

I beleave the trigraphs proposal originated from Denmark, which happens
to have exactly the same alphabet as we do have in Norway, that is [a-z]
plus 3 the additional characters: [æøå] (plus 3 more for upper case).

Around 1990, extended keyboards was available, but still there was lots
of old ASCII keyboards around, lacking those 3+3 characters on the
keyboard. So what happened, was that some keys was remapped, e.g. { | }
[ / ], to be able to input the native characters.

As a student, I did use such keyboards (I beleave the keymap was NS 4551, which was some national variant of ISO 646), which wasn't much of a problem when coding. The workaround, would not be to use trigraphs anyway, but rather to loose the [æøå], and swap to an English keymap. For scientific documents, our native characters could still be easily generated via TeX escape codes (IIRC \ae, \oe and \aa).

Perhaps the situation in the industry back then was different, where
some terminals was hardwired such that a C program couldn't be
written, but that should be history these days. At least from my point of view, I can't imagine there will be a C99 (or C1X) environment in Scandinavia, which really need those trigraphs/digraphs.

AFAICS, removing trigraphs/digraphs from C1X, would mainly be an issue
for existing implementations and compiler validation suits. The impact on existing C programs, should be minimal.

So, I expect, trigraphs/digraphs can be deprecated in C1X with minimal negative effect. If not already done, converting a hypothetical program using trigraphs/digraphs, not only helps readability, but can be automated too.

--
Tor <bwzcab@xxxxxxxxx | tr i-za-h a-z>

<Prev in Thread] Current Thread [Next in Thread>