Worthy characters bug in online docs?

chris hermansen clhermansen@gmail.com
Fri Jan 9 19:08:14 GMT 2026


In https://gcc.gnu.org/onlinedocs/ga68/Worthy-characters.html I don't see
the @, used in RR to reposition row indices, indicated as a worthy
character.

I've stared at the list quite a few times and I'm pretty sure @ isn't there
but I'm pretty sure it should be.

That's it for the "bug" part of this email but I have a few more comments
related to matters introduced on this page.

In relation to logical operators of conjunction, disjunction and negation:

The footnotes mention that "The Revised Report specifies that & is a monad,
used as a symbol for the dyadic AND operator".  Note that the RR prefers ^
for the AND operator in its code examples, and | for the OR operator.  Also
these declarations are interesting:

a) op { ∨, or } = (bool a, b) bool: (a I true I b);
b) op { ∧, &, and } = (bool a, b) bool: (a I b I false);
c) op { ~, ¬, not } = (bool a) bool: (a I false I true);

The OR operator is either the thing that looks like an upside-down
circumflex (Unicode alias "Logical Or" U+2228) or the word "or" in bold.

The AND operator is either the thing that looks like a circumflex (Unicode
alias "Logical And") or the ampersand or the word "and" in bold.

The NOT operator is either the tilde, the thing that looks like a hyphen
with a downward stroke off the right side (Unicode alias "Not Sign" U+00AC)
or the word "not" in bold.

>From my reading, in its code examples, the RR uses ∧ for AND, ∨ for OR and
¬ for NOT.  I have never seen | used for OR in the RR; as far as I know it
is only used for THEN and ELSE and I suppose in combo with : and case
clauses.

The footnotes also mention'“severe difficulties” with the hardware
representation of the tilde character'; I'm speculating, but it could be
because standard EBCDIC did not have a tilde character but rather the ¬
which was used in languages like PL/I for negation; but the tilde was added
to the "invariant subset" of EBCDIC though it is one of the extra
characters whose position is different between the various code pages of
the invariant subset of EBCDIC, according to this Wikipedia page
https://en.wikipedia.org/wiki/EBCDIC#cite_note-10

I won't succumb to the temptation of coming up with a sarcastic comment
about variants of the invariant subset.  Really I won't.  But I can see
that if the tilde moved around depending on where the mainframe hardware
was installed, I would probably have gravitated to using one of the
alternatives.

Finally it might be worth mentioning that the invariant subset of EBCDIC
also had two vertical bar symbols - one solid, one with a break at the
midpoint.  The solid vertical bar was the one used for OR in languages like
PL/I. I don't know the purpose of the broken vertical bar except that it
may have been intended as the ASCII vertical bar; many keyboards show a
vertical bar as the broken vertical bar symbol, including the System76
laptop keyboard I'm using to type this email.  The broken vertical bar is
apparently also one of invariant subset characters that move location among
different code pages.
-- 
Chris Hermansen · clhermansen "at" gmail "dot" com

C'est ma façon de parler.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://gcc.gnu.org/pipermail/algol68/attachments/20260109/5245f305/attachment.htm>


More information about the Algol68 mailing list