26? 52? That's very Anglocentric. Why not any alphabetic Unicode character? EBCDIC was great in its day, but these days 256 code points is not nearly enough.
-- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר ________________________________________ From: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU> on behalf of Paul Gilmartin <00000014e0e4a59b-dmarc-requ...@listserv.uga.edu> Sent: Tuesday, August 26, 2025 12:10 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU <ASSEMBLER-LIST@LISTSERV.UGA.EDU> Subject: Re: Is HLASM efficient WAS: Telum and SpyreWAS: Vector instruction performance External Message: Use Caution On 8/25/25 20:33, Jon Perryman wrote: > Ask yourself, why are unix commands so strange (e.g. testcmd -x -v -f aaa -u > mmm -t bbb ccc -u). Why is uppercase/lowercase important to Unix? It's > because of C limitations. In C, you strchr('-') or strchr(' '). Since you > can't search for 2 different characters, you must structure the command in a > known easily parsed syntax. > ... Most UNIX facilities support search for 2 (or more) different characters, often by [list]. > Searching and parsing is stunningly fast using 1 z instruction. So how does > TSO parse commands such as: > > TSO ALloc DDN(abc) PATH('/u/user') DISP(NEW) catalog SPACE(1,1) > > You can't uppercase the command because of PATH requires lowercase. You use > TRT CMD,TRT_TABLE where TRT_TABLE are the characters that represent parsing > points. > ... "Doctor, it hurts when I uppercase the command." "Don't do that." Many mainframe conventions arose from an attemptto accommodate programmer habits formed by the limitations of the 026 (no longer marketed by IBM,AFAIK), aggravated by the 3277 which, unforgivably, transmitted minuscule while it displayed majuscule. Don't uppercase the command; uppercase the keyword at the point of symbol lookup. Similarly, uppercase the argument of DSN; leave the argument of PATH, SEND, ... as is. Outgrow your 026 mindset. Think of 52 different characters, not two typographic variants of 26 characters. But IBM could do better. It lacks common extensions such as: find -iname OptionL case-sensitive regex for DFSORt ... -- gil