Stephen C. Johnson

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

Stephen Curtis Johnson noto come Steve Johnson)[1] (...) è uno scienziato informatico statunitense che ha lavorato al Bell Labs e AT&T per circa vent'anni. Egli è noto per Yacc, lint, spell, e per il Portable C Compiler, che hanno contribuito a diffonder i linguaggi di programmazione Unix e C.[2] Ha contribuito anche in campi diversi come computer music, psicometria e VLSI design.[3].

Biografia[modifica | modifica wikitesto]

La sua passione per l'informatica iniziò all'età di cinque anni, quando suo nonno lo portò a lavorare presso il Bureau of Standards. Il computer che vide ("delle dimensioni di una piccola casa") fece una grande impressione su di lui, e decise che "avrebbe voluto lavorare con i computer e non se ne pentì mai".[3]

Poiché nel college nel quale studiava non c'erano lezioni di informatica, decise di studiare matematica, e alla fine conseguì un dottorato di ricerca.

Bell Labs e AT&T[modifica | modifica wikitesto]

Johnson lavorò in Bell Labs e AT&T, negli anni 1960, dedicandosi al linguaggio di programmazione Unix per circa vent'anni, assieme a scienziati come Jeffrey Ullman, Dennis Ritchie e Alfred Aho. Egli è noto per aver scritto il codice per Yacc, Lint e Portable C Compiler.

Alla metà degli anni 1970, Johnson e il suo collega della Bell, Dennis Ritchie, "dimostrarono che Unix era un software portabile", che Ritchie considerò la scintilla che portò alla diffusione di Unix.[4] Nella metà degli anni 1980, fu capo del dipartimento del linguaggio UNIX (Unix System V).[3]

Johnson sviluppò Yacc agli inizi degli anni '70 poiché voleva inserire la disgiunzione esclusiva o nel compiler del linguaggio linguaggio di Ritchie.[5] Il collega di Bell Labs, Alfred Aho, gli suggerì di guardare un lavoro di Donald Knuth sul Parser LR, che servì come base per Yacc.[3] In una intervista del 2008, Johnson disse che "il contributo che Yacc ha dato alla diffusione di Unix e C mi rende orgoglioso".[2] Lint venne sviluppato nel 1978 mentre Johnson stava eliminando errori dalla compilazione di Yacc che aveva scritto per C ed era alle prese con problemi di portabilità tendenti a trasferire Unix su una macchina a 32 bit.[3][6]

Silicon Valley[modifica | modifica wikitesto]

Nel 1986, Johnson si trasferì nella Silicon Valley, entrando in numerose startup, dove lavorò principalmente sui compilatori, ma anche sulla grafica 2D e 3D. Tra le aziende nelle quali lavorò vi fu la Dana Computer, Inc.,[7] Melismatic Software e Transmeta, dove realizzò i microprocessori Intel-compatibili a bassa potenza.[3]

Fu nel consiglio di amministrazione di USENIX per dieci anni, compresi quattro anni nel ruolo di presidente negli anni 1990.

Carriera successiva[modifica | modifica wikitesto]

Nel 2002, si trasferì a Boston alla MathWorks,[8] dove contribuì a mantenere il front-end del linguaggio di programmazione MATLAB, per il quale creò anche un prodotto lint chiamato M-Lint. Aveva incontrato il fondatore di MathWorks, Cleve Moler, mentre lavorava in una startup della Silicon Valley e aveva sviluppato una "relazione di consulenza a distanza" negli anni '90.[3]

Johnson vive a Morgan Hill e lavora all'apprendimento automatico in Wave Computing, una startup che sviluppa computer ad alta efficienza energetica per l'apprendimento automatico.[1]

Note[modifica | modifica wikitesto]

  1. ^ a b Steve Johnson, What's it All About, su Yaccman.com. URL consultato il 19 gennaio 2018.
  2. ^ a b Naomi Hamilton, Yacc, Unix, and Advice from Bell Labs Alumni Stephen Johnson, in Computerworld, 10 luglio 2008. URL consultato il 19 gennaio 2018 (archiviato dall'url originale il 20 gennaio 2018).
  3. ^ a b c d e f g Richard Morris, Stephen Curtis Johnson: Geek of the Week, in Red Gate Software, 1º ottobre 2009. URL consultato il 19 gennaio 2018.
  4. ^ Dennis Ritchie, How Did We Get Here, Where Are We Going?, in AUUG Conference Proceedings, Australia, AUUG, Inc., settembre 1994, p. 4, ISBN 978-0-646-20108-5.
  5. ^ Dennis M. Ritchie, The Development of the C Language (PDF), Association for Computing Machinery, aprile 1993. URL consultato il 18 novembre 2019 (archiviato dall'url originale il 24 luglio 2015).
  6. ^ Stephen C. Johnson, Lint, a C Program Checker, 25 ottobre 1978, pp. 78–1273.
  7. ^ Peggy Watt, Jobs Pushes for New Unix Standard: Usenix Attendees Defend Operating System, in InfoWorld, 15 giugno 1987. URL consultato il 19 gennaio 2018.
  8. ^ USENIX '04 Training Track Instructors, su USENIX. URL consultato il 19 gennaio 2018.

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàVIAF (EN8232149108423268780007 · WorldCat Identities (ENviaf-8232149108423268780007