Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!samsung!think!bbn!drilex!dricejb From: dricejb@drilex.UUCP (Craig Jackson drilex1) Newsgroups: comp.lang.c Subject: Re: C/370 is case insensitive, and just generally rots! Message-ID: <6966@drilex.UUCP> Date: 19 Dec 89 15:15:56 GMT References: <71894@psuecl.bitnet> <1290@quintus.UUCP> <72683@psuecl.bitnet> <1989Dec18.113044.10445@gdt.bath.ac.uk> <1989Dec18.232929.23080@ux1.cso.uiuc.edu> Reply-To: dricejb@drilex.UUCP (Craig Jackson drilex1) Organization: DRI/McGraw-Hill, Lexington, MA Lines: 59 In article <1989Dec18.232929.23080@ux1.cso.uiuc.edu> mcdonald@aries.scs.uiuc.edu (Doug McDonald) writes: >In article <1989Dec18.113044.10445@gdt.bath.ac.uk> exspes@gdr.bath.ac.uk (P E Smee) writes: >>In article <72683@psuecl.bitnet> c9h@psuecl.bitnet writes: >>>C/370 is IBM's latest incarnation of C for the system/370, and many of their >>>mainframes of course. I'm using it on a 3090-600(S or E, I don't recall) >>>and a 4381. It sucks. >>> >>*I* was flaming 5713-AAH; our IBM people have never indicated that >>there is an official alternative. (We *are* looking into the C on the >>'Waterloo' tapes.) > >This seems so simple: there is a set of STANDARD, world-wide >character codes, that are used on essentially all computers in the >world except one benighted variety: ASCII and its 256 bit European >extensions. All of these have the printing codes from 32 to 126 >the same. > >IBM: simply use these for all uses on your mainframes. > >So simple. > >Or: when specifying a new computer you are going to buy, >specify that these are the codes that will be used for all >operations. > >Doug McDonald The major reason why EBCDIC is incompatible with ASCII is that it *predates* ASCII. EBCDIC was put to be sometime around 1964-66; ASCII didn't gel until around 1968. By then, EBCDIC was in wide use. (Also, IBM had some other criteria: EBCDIC can be derived from punch card codes more easily than ASCII, for example.) We've had quite a bit of experience with ASCII characters that EBCDIC doesn't like, as we ported some Burroughs ALGOL programs to IBM by writing a compiler. (Burroughs uses EBCDIC, but a different version than IBM's; it maps one-to-one onto ASCII.) To the best of my knowledge, all 3270-like terminals other than the 3277 can display square brackets. The problem is that they respond to the hex codes '41' and '42', rather than 'AD' and 'BD', which seem to be the EBCDIC "standard". With appropriate CMS SET INPUT and SET OUTPUT commands, it can be quite easy to deal with these characters. (If you want to type them in, you need six commands: SET INPUT '`' -> 'AD' (or some similar character, SET INPUT '41' -> 'AD', and SET OUTPUT 'AD' -> '41'. (Plus equivalent translates for right-square-bracket.) As for specifying that ASCII should be used in all operations, feel free. If that results in a computer that costs more, doesn't have the software you need, or doesn't have the performance (CPU or I/O) you need, feel justified. (If you're counting beans on large amounts of data (>20 GB), one or more of the above clauses may be true.) Incidentally, IBM would be happy to meet that requirement: they'd just quote AIX/370. :-) -- Craig Jackson dricejb@drilex.dri.mgh.com {bbn,axiom,redsox,atexnet,ka3ovk}!drilex!{dricej,dricejb}