4 ms·
I read the same book and got the exact same conclusion. Then I read The UNIX—Haters Handbook and thought that Unix tools (like awk) are sadly not good enough an
by dakiol 2y ago
I read the same book and got the exact same conclusion. Then I read The UNIX—Haters Handbook and thought that Unix tools (like awk) are sadly not good enough anymore.
- kragen 2y agoyeah, there are a lot of questionable design decisions in there that are only defensible in the context of the pdp-11's 64k address space and slow cpu
- fuzztester 2y agowhat are some of those?
- kragen 2y agomaking everything a string, for example. representing string length with null termination. splitting shell variables into words after variable substitution (rather than having a list type). a zillion shell-script bugs when filenames, directory names, search strings, etc., contain spaces. not having user-defined subroutines in sh or awk. no command-line editing. command names and options that read the same as you type them (thus forcing you to choose between unreadable commands and commands that are too unwieldy to type comfortably). no tab completion. more generally, no interactive feedback on what is going to happen when you submit your command. no job control. having to retype command output as new input all the time. table layout that only works with fixed-width fonts. filenames limited to 14 characters. no text search through previous output. hardlinks rather than reflinks. an inflexible security policy defined in the kernel. the reification of . and .. in the filesystem. exposing the layout of filesystem directories to every program that enumerated directory entries. no way to undo rm or mv. no screen editors. arbitrary line-length limits all over the place. . in the path. textual macro expansion as the primary form of higher-order programming. backslashed backquotes. backslashed backslashes. total precedence orderings on infix operators. slightly different regular expression syntaxes for each program. self-perpetuating at jobs. etc. a lot of these have been fixed, but some are hard to fix