It reminds me that in the 1980s as the person responsible for PL/I
programming standards at an insurance company, I wrote a series of
Builtin-style functions for mainframe PL/I. These were largely covered
in the ANSI PL/I but absent from the Optimiser. They included LEFT,
RIGHT, ASCII, EBCDIC and others. Designing these routines probably took
longer than writing them. Management suggested I might like to do the
same for COBOL, but I never got around to it. It is a useful feature of
PL/I (not exclusive of course) that language feature like routines can
be written in the language (or Assembler for all-out speed if you
preferred).