Déi gréissten Unix Programmer

Den Auteur vum Artikel, Douglas McIlroy, ass en amerikanesche Mathematiker, Ingenieur a Programméierer. Hien ass am Beschten bekannt fir d'Pipeline am Unix Betribssystem z'entwéckelen, d'Prinzipien vun der komponentorientéierter Programméierung, a verschidde originell Utilities: Zauber, Diff, Sort, join, speak, tr.

Heiansdo kommt Dir iwwer wierklech wonnerbar Programmer. Nodeems ech duerch meng Erënnerung gerammt hunn, hunn ech eng Lëscht vun echte Unix Pärelen iwwer d'Joren zesummegestallt. Prinzipiell sinn dës ganz seelen an net sou néideg Programmer. Awer wat se erausstinn ass hir Originalitéit. Ech ka mir net emol virstellen datt ech selwer mat der Iddi vu jidderengem vun hinnen komm sinn.

Deelt wat Programmer Dir sidd och esou beandrockt?

PDP-7 Unix

Fir Ufänger, de PDP-7 Unix System selwer. Seng Einfachheet a Kraaft hunn mech vun engem mächtege Mainframe op eng kleng Maschinn geplënnert. Et ass de quintessentielle hierarchesche Dateiesystem, getrennten Shell, a Benotzerniveau Prozesskontrolle déi Multics um Mainframe no Honnerte vu Mannjäre vun der Entwécklung net konnt erreechen. Dem Unix seng Mängel (sou wéi d'Dateiesystem seng Rekordstruktur) ware grad esou léierräich a befreiend wéi seng Innovatiounen (wéi Shell I/O Viruleedung).

dc

Dem Robert Morris seng Variable Precision Desktop Calculator Math Library benotzt inverse Feeleranalyse fir d'Präzisioun ze bestëmmen déi op all Schrëtt erfuerderlech ass fir eng Benotzerspezifizéierter Resultatpräzisioun z'erreechen. Op der 1968 NATO Software Engineering Conference, a mengem Bericht iwwer Software Komponenten, hunn ech Referenzprozeduren virgeschloen, déi all gewënschte Genauegkeet produzéiere kënnen, awer ech wousst net wéi ech se an d'Praxis ëmsetzen. dc ass nach ëmmer deen eenzege Programm, deen ech weess, deen dat maache kann.

Tippfeeler

Tippfeeler arrangéiert Wierder am Text no hirer Ähnlechkeet mam Rescht vum Text. Schreifweis wéi 'hte' tendéieren um Enn vun der Lëscht. De Robert Morris sot houfreg datt de Programm fir all Sprooch gläich gutt funktionnéiert. Obwuel Tippfeeler hëlleft Iech net fir phonetesch Feeler ze fannen, war et e richtege Boon fir all Typsetter, an et huet vill gutt gemaach ier de vill manner interessant, awer méi genee Wierderbuch Spellchecker koum.

Tippfeeler ass bannen esou onerwaart wéi no baussen. Den Ähnlechkeetsmiessung Algorithmus baséiert op der Frequenz vum Optriede vun Trigrammen, déi an engem 26 × 26 × 26-Array gezielt ginn. Dat klengt Gedächtnis hat kaum genuch Plaz fir een-Byte-Zähler, sou datt e Schema ëmgesat gouf fir grouss Zuelen a kleng Zähler ze kompriméieren. Fir Iwwerschwemmung ze vermeiden, goufen d'Zähler op probabilistescher Basis aktualiséiert, fir eng Schätzung vum Logarithmus vum Konterwäert z'erhalen.

eqn

Mat der Optriede vun der Phototypesetting gouf et méiglech, awer schrecklech langweileg, klassesch mathematesch Notatioun ze drécken. D'Lorinda Cherry huet decidéiert eng méi héije Beschreiwungssprooch z'entwéckelen, a geschwënn ass de Brian Kernigan bei hir bäikomm. Hir genial Beweegung war d'mëndlech Traditioun op schrëftlech ze setzen, sou datt eqn bemierkenswäert einfach ze léieren war. Déi éischt mathematesch Ausdrock Sprooch preprocessor vu senger Aart, eqn huet net vill verbessert zënter dann.

strukturéieren

Brenda Baker ugefaang hirem Fortan-ze-Ratfor Converter géint de Rot vun hirem Patron Entwécklungslänner, mech. Ech hu geduecht datt dëst zu enger spezieller Neiuerdnung vum Originaltext kéint féieren. Et gëtt fräi vun Ausso Zuelen, awer soss net méi liesbar wéi gutt strukturéiert Fortran Code. Brenda huet mech falsch bewisen. Si entdeckt datt all Fortran Programm eng kanonesch strukturéiert Form huet. D'Programméierer léiwer déi kanonesch Form, anstatt dat wat se selwer ursprénglech geschriwwen hunn.

Ouschteren

D'Syntaxdiagnostik am Compiler erstallt vum Sue Graham senger Grupp zu Berkeley war déi hëllefräichst déi ech je gesinn hunn - an et gouf automatesch gemaach. Op engem Syntaxfehler freet de Compiler Iech fir en Token anzeféieren fir weider ze analyséieren. Kee Versuch ze erklären wat falsch ass. Mat dësem Compiler hunn ech de Pascal an engem Owend geléiert ouni Handbuch bei der Hand.

Deeler

Verstoppt am WWB (Writer's Workbench) Modul parts Lorinda Cherry bestëmmt Deeler vu Ried fir Wierder an engem engleschen Text baséiert op nëmmen e klengt Wierderbuch, Schreifweis a Grammatikregelen. Baséierend op dëser Annotatioun weist de WWB Programm stilometresch Indikatoren vum Text, wéi d'Prévalence vun Adjektiver, Ënneruerdnungsklauselen a komplexe Sätz. Wéi d'Lorinda op NBC's Today interviewt gouf an iwwer déi innovativ Grammatikcheck an WWB Texter geschwat huet, war et déi éischt Ernimmung vun Unix op der Televisioun.

egrep

Den Al Aho huet erwaart datt säin deterministesche reguläre Ausdrockresolver dem Ken seng klassesch net-deterministesche Resolver iwwerhëlt. Leider, déi lescht war schonn e Pass duerch komplex regulär Ausdréck fäerdeg, iwwerdeems egrep seng eege deterministesch Automatisatioun gebaut. Fir nach dës Course ze gewannen, huet den Al Aho de Fluch vum exponentielle Wuesstum vum Staatsdësch vum Automat erfonnt andeems en e Wee erfonnt huet fir nëmmen déi Entréen an der Tabell ze bauen déi tatsächlech während der Unerkennung besicht ginn.

Kriibsen

Dem Luca Cardelli säi charmante Meta-Programm fir de Blit-Fenstersystem huet virtuelle Krabben verëffentlecht, déi den eidele Bildschiermraum geraumt hunn, an d'Kante vun aktive Fënstere méi a méi gebass hunn.

E puer allgemeng Gedanken

Obwuel et net vu baussen ze gesinn ass, hunn d'Theorie an d'Algorithmen eng entscheedend Roll bei der Schafung vun de meeschte vun dëse Programmer gespillt: Tippfeeler, DC, Struktur, Pascal, egrep. Tatsächlech ass et déi ongewéinlech Uwendung vun der Theorie déi am meeschten iwwerraschend ass.

Bal d'Halschent vun der Lëscht - Pascal, Struktur, Deeler, eqn - goufen ursprénglech vu Fraen geschriwwen, wäit iwwer d'Demographesch vu Fraen an der Informatik.

Douglas McIlroy
Mäerz, 2020


Source: will.com

Setzt e Commentaire