Кен Томпсон: відмінності між версіями

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[перевірена версія][перевірена версія]
Вилучено вміст Додано вміст
Немає опису редагування
 
(Не показано 33 проміжні версії 14 користувачів)
Рядок 2: Рядок 2:
| ім'я = Кеннет Лейн Томпсон
| ім'я = Кеннет Лейн Томпсон
| ім'я_мовою_оригінала = {{lang-en|Kenneth Lane Thompson}}
| ім'я_мовою_оригінала = {{lang-en|Kenneth Lane Thompson}}
| зображення = Ken n dennis.jpg
| зображення = Ken Thompson and Dennis Ritchie.jpg
| зображення_розмір =
| зображення_розмір =
| зображення_підпис = Кен Томпсон (зліва) та [[Деніс Рітчі]]
| зображення_підпис = Кен Томпсон (зліва) та [[Деніс Рітчі]]
Рядок 15: Рядок 15:
| заклад = [[Bell Labs]]<br />Entrisphere, Inc<br />[[Google|Google Inc.]]
| заклад = [[Bell Labs]]<br />Entrisphere, Inc<br />[[Google|Google Inc.]]
| Alma Mater = [[Університет Каліфорнії (Берклі)|Університет Каліфорнії, Берклі]]
| Alma Mater = [[Університет Каліфорнії (Берклі)|Університет Каліфорнії, Берклі]]
| відомий через = [[UNIX]]<br />[[B (мова програмування)|мова програмування B]]<br />[[Комп'ютерні шахи|шаховий комп'ютер]] Belle<br />[[UTF-8]]<br />[[Бази даних ендшпілю]]
| відомий через = [[UNIX]]<br />[[B (мова програмування)|мова програмування B]]<br />[[Комп'ютерні шахи|шаховий комп'ютер]] Belle<br />[[UTF-8]]<br />[[Бази даних ендшпілю]]<br />[[Go (мова програмування)|Go]]
| звання =
| звання =
| ступінь =
| ступінь =
| керівник =
| керівник =
| учні =
| учні =
| нагороди =
| нагороди = [[Премія Тюрінга]]<br />[[Національна медаль технологій]]<br />{{Не перекладено|Премія Цутому Канай|Премія Цуто́му Кана́й|en|Tsutomu Kanai Award}}


<!--
<!--
Рядок 27: Рядок 27:
-->
-->
}}
}}
{{Othernames|Томпсон}}
{{Othernames|Томпсон (прізвище)|Томпсон}}
'''Ке́ннет Лейн То́мпсон''' ({{lang-en|Kenneth Lane Thompson}}), народився [[4 лютого]] [[1943]] року, знаний в [[хакер]]ських колах як '''ken'''<ref>{{cite web
'''Ке́ннет Лейн То́мпсон''' ({{lang-en|Kenneth Lane Thompson}}); {{н}} [[4 лютого]] [[1943]] року, знаний в [[хакер]]ських колах як '''ken'''<ref>{{cite web
| title = ken: /ken/, n.
|title = ken: /ken/, n.
| url = http://www.catb.org/jargon/html/K/ken.html
|url = http://www.catb.org/jargon/html/K/ken.html
| publisher = The [[Jargon File]] (version 4.4.7)
|publisher = The [[Jargon File]] (version 4.4.7)
| archiveurl = http://www.webcitation.org/6I30RKB2W
|archiveurl = https://web.archive.org/web/20110624053359/http://www.catb.org/jargon/html/K/ken.html
| archivedate = 2013-07-12
|archivedate = 2011-06-24
|accessdate = 2011-02-02
}}</ref>, піонер [[інформатика|комп'ютерної науки]]. Пропрацювавши в [[Bell Labs]] протягом більшої частини своєї теперішньої кар'єри, Томпсон відомий розробкою [[B (мова програмування)|мови програмування B]] (базувалась в основному на мові [[BCPL]]), яку він використовував для написання [[операційна система|операційної системи]] [[Unix]] під час роботи в проекті [[Multics]], роботою з [[C (мова програмування)|мовою програмування C]], як один з творців і ранніх розробників операційних систем Unix і [[Plan 9]].
|deadurl = yes
}}</ref>, піонер [[інформатика|комп'ютерної науки]]. Пропрацювавши в [[Bell Labs]] протягом більшої частини своєї теперішньої кар'єри, Томпсон відомий розробкою [[B (мова програмування)|мови програмування B]] (базувалась в основному на мові [[BCPL]]), яку він використовував для написання [[операційна система|операційної системи]] [[Unix]] під час роботи в проєкті [[Multics]], роботою з [[C (мова програмування)|мовою програмування C]], як один з творців і ранніх розробників операційних систем Unix і [[Plan 9]].


Інші помітні внески Кена Томпсона: робота з [[Регулярний вираз|регулярними виразами]] ([[конструкція Томпсона]]) і ранніми комп'ютерними текстовими редакторами [[QED]] і [[ed]], робота над [[Комп'ютерні шахи|комп'ютерними шахами]], яка включала створення [[бази даних ендшпілю]] і шахової машини [[Belle (шахова машина)|Belle]], а останнім часом він став одним з творців [[мова програмування|мови програмування]] [[Go (мова програмування)|Go]], розробленої [[Google]].
Інші помітні внески Кена Томпсона: робота з [[Регулярний вираз|регулярними виразами]] ([[конструкція Томпсона]]) і ранніми комп'ютерними текстовими редакторами [[QED (текстовий редактор)|QED]] і [[ed]], робота над [[Комп'ютерні шахи|комп'ютерними шахами]], яка включала створення [[бази даних ендшпілю]] і шахової машини {{Не перекладено|Belle (шахова машина)|Belle|en|Belle (chess machine)}}, а останнім часом він став одним з творців [[мова програмування|мови програмування]] [[Go (мова програмування)|Go]], розробленої [[Google]].


== Біографія ==
== Біографія ==
Томпсон народився в [[Новий Орлеан|Новому Орлеані]], [[США]]. Своє дитинство він провів, за його словами як ''navy brat''<ref>[http://www.linfo.org/thompson.html Ken Thompson: A Brief Introduction] - by The Linux Information Project (LINFO)</ref> — дитина кадрового військовослужбовця (див. {{нп|Military brat (U.S. subculture)||en|Military brat (U.S. subculture)}}). Він здобув ступені [[бакалавр]]а в 1965 р. і [[магістр]]а в 1966р. у галузі [[Електротехніка|електротехніки]] та [[інформатика|інформатики]] в [[Університет Каліфорнії (Берклі)|Університеті Каліфорнії, Берклі]], де його керівником магістерської дисертації був [[Елвін Берлекемп]] (Elwyn Berlekamp)<ref>http://math.berkeley.edu/~berlek/students.html</ref>. В 1966 р. Кен Томпсон почав працювати в [[Bell Labs]].
Томпсон народився в [[Новий Орлеан|Новому Орлеані]], [[Сполучені Штати Америки|США]]. Своє дитинство він провів, за його словами як ''navy brat''<ref>[http://www.linfo.org/thompson.html Ken Thompson: A Brief Introduction] {{Webarchive|url=https://web.archive.org/web/20111010225803/http://linfo.org/thompson.html |date=10 жовтня 2011 }} - by The Linux Information Project (LINFO)</ref> — дитина кадрового військовослужбовця (див. {{нп|Military brat (U.S. subculture)||en|Military brat (U.S. subculture)}}). Він здобув ступені [[бакалавр]]а в 1965 р. і [[магістр]]а в 1966 р. у галузі [[Електротехніка|електротехніки]] та [[інформатика|інформатики]] в [[Університет Каліфорнії (Берклі)|Університеті Каліфорнії, Берклі]], де його керівником магістерської дисертації був [[Елвін Берлекемп]] (Elwyn Berlekamp)<ref>{{Cite web|url=http://math.berkeley.edu/~berlek/students.html|title=Thesis Students|website=math.berkeley.edu|language=en|archive-url=https://web.archive.org/web/20210315204201/https://math.berkeley.edu/~berlek/students.html|archive-date=15 березня 2021|accessdate=7 лютого 2011}}</ref>. В 1966 р. Кен Томпсон почав працювати в [[Bell Labs]].


В 1960-х рр. Томпсон і [[Деніс Рітчі]] розробляли операційну систему [[Multics]]. Пишучи Multics, Кен Томпсон створив мову програмування [[Bon]]. Обоє залишили проект Multics, коли [[Bell Labs]] відмовилась від нього в 1969 р. Але вони використали досвід проекту і того ж року стали головними творцями операційної системи [[Unix]]. Томпсон вирішив, що Unix потребує мови програмування системи і розробив [[B (мова програмування)|мову програмування B]], яка стала попередницею [[C (мова програмування)|мови програмування C]], згодом розробленої Рітчі.<ref>{{cite web|title=The Development of the C Language*|author=Dennis M. Ritchie|publisher=Bell Labs/Lucent Technologies|url=http://cm.bell-labs.com/cm/cs/who/dmr/chist.html|archiveurl=http://www.webcitation.org/6HZA6qfVb|archivedate=2013-06-22}}</ref>
В 1960-х рр. Томпсон і [[Денніс Рітчі]] розробляли операційну систему [[Multics]]. Пишучи Multics, Кен Томпсон створив мову програмування [[Bon]]. Обоє залишили проєкт Multics, коли [[Bell Labs]] відмовилась від нього в 1969 р. Але вони використали досвід проєкту і того ж року стали головними творцями операційної системи [[Unix]]. Томпсон вирішив, що Unix потребує мови програмування системи і розробив [[B (мова програмування)|мову програмування B]], яка стала попередницею [[C (мова програмування)|мови програмування C]], згодом розробленої Рітчі.<ref>{{cite web|title=The Development of the C Language*|author=Dennis M. Ritchie|publisher=Bell Labs/Lucent Technologies|url=http://cm.bell-labs.com/cm/cs/who/dmr/chist.html|archiveurl=https://wayback.archive-it.org/all/20150203070752/http://cm.bell-labs.com/cm/cs/who/dmr/chist.html|archivedate=2015-02-03|accessdate=2011-02-18|deadurl=yes}}</ref>


Томпсон розробив версію редактора [[QED]] для [[CTSS]] (однієї з перших операційних систем з ''розділенням часу''), яка включала [[регулярні вирази]] для пошуку тексту.
Томпсон розробив версію редактора [[QED (текстовий редактор)|QED]] для [[Compatible Time-Sharing System|CTSS]] (однієї з перших операційних систем з [[Розподіл часу|розподілом часу]]), яка включала [[регулярні вирази]] для пошуку тексту.
QED і пізніший редактор Томпсона [[ed]] (редактор за замовчуванням в Unix) зробили великий внесок в популярність регулярних виразів, які раніше розглядалися в основному як інструмент (або іграшка) для логіків. Регулярні вирази стали поширеними в програмах обробки текстів в Unix, таких як утиліта [[grep]], і сучасних мовах програмування, таких як [[Perl]]; вони є також головною концепцією в текстовому редакторі [[sam (текстовий редактор)|sam]] канадського розробника Unix {{Не перекладено|Роб Пайк|Роба Пайка|en|Rob Pike}}. Майже всі програми, які працюють з регулярними виразами, тепер використовують певний варіант нотації Томпсона для цих виразів.
QED і пізніший редактор Томпсона [[ed]] (редактор за замовчуванням в Unix) зробили великий внесок в популярність регулярних виразів, які раніше розглядалися в основному як інструмент (або іграшка) для логіків. Регулярні вирази стали поширеними в програмах обробки текстів в Unix, таких як утиліта [[grep]], і сучасних мовах програмування, таких як [[Perl]]; вони є також головною концепцією в текстовому редакторі [[sam (текстовий редактор)|sam]] канадського розробника Unix {{Не перекладено|Роб Пайк|Роба Пайка|en|Rob Pike}}. Майже всі програми, які працюють з регулярними виразами, тепер використовують певний варіант нотації Томпсона для цих виразів.


Томпсон разом з Робом Пайком<ref>{{cite web|title=Переписка Роба Пайка з Кеном Томпсоном та іншими про історію розробки UTF-8|author=Rob Pike|url=http://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt|archiveurl=http://www.webcitation.org/6I30RuA0p|archivedate=2013-07-12}}</ref> у 1992 р. розробив широковживану схему кодування символів [[UTF-8]].
Томпсон разом з Робом Пайком<ref>{{cite web
|title = Листування Роба Пайка з Кеном Томпсоном та іншими про історію розробки UTF-8
|first = Rob
|last = Pike
|url=http://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt
|archiveurl=https://web.archive.org/web/20110301051538/http://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt
|archivedate=2011-03-01
|accessdate=2011-02-28
|deadurl=yes}}</ref> у 1992 р. розробив широковживану схему кодування символів [[UTF-8]].


Разом з Джозефом Кондоном (Joseph Condon) він створив апаратне та програмне забезпечення для [[Belle (шахова машина)|Belle]], чемпіона серед [[Комп'ютерні шахи|шахових комп'ютерів]]. Він також написав програми для отримання повного списку [[ендшпіль|ендшпілів]], відомого як [[бази даних ендшпілю]] для 4, 5 і 6 фігур, що дозволяють програмам для гри в шахи робити найкращі ходи в позиціях, які зберігаються в цих базах. Пізніше за допомогою експерта з ендшпілів Джона Ройкрофта (John Roycroft) Томпсон розповсюдив свої перші результати на [[CD-ROM]].
Разом з Джозефом Кондоном (Joseph Condon) він створив апаратне та програмне забезпечення для [[Belle (шахова машина)|Belle]], чемпіона серед [[Комп'ютерні шахи|шахових комп'ютерів]]. Він також написав програми для отримання повного списку [[ендшпіль|ендшпілів]], відомого як [[бази даних ендшпілю]] для 4, 5 і 6 фігур, що дозволяють програмам для гри в шахи робити найкращі ходи в позиціях, які зберігаються в цих базах. Пізніше за допомогою експерта з ендшпілів Джона Ройкрофта (John Roycroft) Томпсон розповсюдив свої перші результати на [[CD-ROM]].


== З книги Пітера Сайбела «Кодери в Роботі: Роздуми про Ремесло Програмування» ==
== З книги Пітера Сайбела «Кодери в Роботі: Роздуми про Ремесло Програмування» ==
Ця книга<ref>http://books.google.com.ua/books?id=nneBa6-mWfgC&printsec=frontcover&dq=Coders+at+Work&hl=uk&ei=kIRyTcDKA5Co8QPjkK2vCA&sa=X&oi=book_result&ct=result&resnum=1&ved=0CCkQ6AEwAA#v=onepage&q&f=false</ref> містить інтерв'ю з 15 видатними програмістами. Передмову до інтерв'ю з Кеном Томпсоном Пітер Сайбел (Peter Seibel<ref name="codersatwork.com">http://codersatwork.com/</ref>) починає абзацом: «Кен Томпсон є оригінальним бородатим хакером Unix. Він витратив кар'єру, працюючи над тим, що він вважав цікавим, яке, в різний час, включало аналогові обчислення, системи програмування, регулярні вирази і комп'ютерні шахи.», а закінчує словами: «В цьому інтерв'ю він говорив про свою ранню любов до електроніки, про доволі неортодоксальну академічну кар'єру, що забезпечили йому навчальні курси, коли він був ще студентом і про те, чому його лякає сучасне програмування». На перше питання інтерв'ю: "Як ви навчились програмувати?" Томпсон відповів: "Я завжди був зачарований логікою і навіть у початковій школі я працював над арифметичними задачами у двійковій, все в такому дусі. Просто тому, що я був зачарований".
Ця книга<ref>{{Cite book|url=https://books.google.com/books/about/Coders_at_Work.html?id=nneBa6-mWfgC|назва=Coders at Work: Reflections on the Craft of Programming|ім'я1=Peter|прізвище1=Seibel|видавець=Apress|дата=16 вересня 2009|мертвий-url=no|дата-доступу=2 червня 2021|archive-date=21 квітня 2021|archive-url=https://web.archive.org/web/20210421190632/https://books.google.com/books/about/Coders_at_Work.html?id=nneBa6-mWfgC}} {{ref-en}}</ref> містить інтерв'ю з 15 видатними програмістами. Передмову до інтерв'ю з Кеном Томпсоном Пітер Сайбел (Peter Seibel<ref name="codersatwork.com">{{Cite web |url=http://codersatwork.com/ |title=Архівована копія |accessdate=7 лютого 2011 |archive-date=29 квітня 2011 |archive-url=https://web.archive.org/web/20110429060340/http://www.codersatwork.com/ }}</ref>) починає абзацом: «Кен Томпсон є оригінальним бородатим хакером Unix. Він витратив кар'єру, працюючи над тим, що він вважав цікавим, яке, в різний час, включало аналогові обчислення, системи програмування, регулярні вирази і комп'ютерні шахи.», а закінчує словами: «В цьому інтерв'ю він говорив про свою ранню любов до електроніки, про доволі неортодоксальну академічну кар'єру, що забезпечили йому навчальні курси, коли він був ще студентом і про те, чому його лякає сучасне програмування». На перше питання інтерв'ю: «Як ви навчились програмувати?» Томпсон відповів: «Я завжди був зачарований логікою і навіть у початковій школі я працював над арифметичними задачами у двійковій, все в такому дусі. Просто тому, що я був зачарований».


== Нагороди ==
== Нагороди ==



=== Премія Тюрінга ===
=== Премія Тюрінга ===
У 1983 році Томпсон та Рітчі разом отримали [[Премія Тюрінга|Премію Тюрінга]] ''"За їхню розробку загальної теорії операційних систем і особливо за реалізацію операційної системи UNIX"''. При отриманні Премії Тюрінга Кен Томпсон виступив з промовою ''"Reflections on Trusting Trust"''<ref>[http://cm.bell-labs.com/who/ken/trust.html ''Reflections on Trusting Trust''. Промова при отриманні Премії Тюрінга]</ref> (''"Критика довірливості"'', дослівно ''"Роздуми про довірливу довіру"''). У промові він говорив про найкоротшу [[Самовідтворююча програма|самовідтворюючу програму]]; про те, що [[компілятор]] [[C (мова програмування)|C]] написаний на С; про те, як в компілятор С можна вбудувати [[Троянський вірус|троянського коня]] (''[[бекдор]] атака'', зараз відома як ''Томпсон хак''), вилучивши його після компіляції з [[Сирцевий код|сирцевого коду]]. Опис такої атаки вважається основоположною роботою в галузі комп'ютерної безпеки. Томпсон робить висновок (мораль): «Ви не можете довіряти тому коду, який ви не створили повністю самі.»
У 1983 році Томпсон та Рітчі разом отримали [[Премія Тюрінга|Премію Тюрінга]] «''За їхню розробку загальної теорії операційних систем і особливо за реалізацію операційної системи UNIX»''. При отриманні Премії Тюрінга Кен Томпсон виступив з промовою «''Reflections on Trusting Trust»''<ref>{{Cite web |url=http://cm.bell-labs.com/who/ken/trust.html |title=''Reflections on Trusting Trust''. Промова при отриманні Премії Тюрінга |accessdate=19 лютого 2011 |archiveurl=https://archive.today/20120525231611/http://cm.bell-labs.com/who/ken/trust.html |archivedate=25 травня 2012 |deadurl=yes }}</ref> («''Критика довірливості»'', дослівно «''Роздуми про довірливу довіру»''). У промові він говорив про найкоротшу [[Квайн (програмування)|самовідтворюючу програму]]; про те, що [[компілятор]] [[C (мова програмування)|C]] написаний на С; про те, як в компілятор С можна вбудувати [[Троянський вірус|троянського коня]] (''[[бекдор]] атака'', зараз відома як ''Томпсон хак''), вилучивши його після компіляції з [[Сирцевий код|сирцевого коду]]. Опис такої атаки вважається основоположною роботою в галузі комп'ютерної безпеки. Томпсон робить висновок (мораль): «Ви не можете довіряти тому коду, який ви не створили повністю самі.»


=== Медаль Річарда Геммінга ===
=== Медаль Річарда Геммінга ===
В 1990 р. Кен Томпсон також спільно з Денісом Рітчі були нагороджені [[Медаль Річарда Геммінга|медаллю Річарда Геммінга]] ''"За створення операційної системи UNIX та мови програмування С"''.
В 1990 р. Кен Томпсон також спільно з Денісом Рітчі були нагороджені [[Медаль Річарда Геммінга|медаллю Річарда Геммінга]] «''За створення операційної системи UNIX та мови програмування С»''.


=== Національна медаль в галузі технологій та інновацій ===
=== Національна медаль в галузі технологій та інновацій ===
27 квітня 1999 р. Томсон і Рітчі отримали [[Національна медаль технологій та інновацій|Національну медаль в галузі технологій]] 1998 року від президента [[Білл Клінтон|Білла Клінтона]] ''"За їхній винахід операційної системи UNIX та мови програмування С, які разом призвели до величезних вдосконалень в комп'ютерних апаратних, програмних і мережевих системах і стимулювали зростання всієї промисловості, зміцнюючи тим самим американське лідерство у вік інформації"''<ref>''[http://www.bell-labs.com/news/1998/december/9/1.html Ritchie and Thompson &#091;to&#093; Get National Medal of Technology]'' Bell Labs pre-announcement {{ref-en}}</ref><ref>''[http://www.bell-labs.com/news/1999/april/28/1.html Ritchie and Thompson Receive National Medal of Technology from President Clinton]'' Bell Labs press release {{ref-en}}</ref>. (На офіційному сайті<ref>http://www.uspto.gov/about/nmti/recipients/1998.jsp</ref> Національної медалі дещо коротший текст: ''"For their invention of UNIX® operating system and the C programming language, which together have led to enormous growth of an entire industry, thereby enhancing American leadership in the Information Age".'')
27 квітня 1999&nbsp;р. Томсон і Рітчі отримали [[Національна медаль технологій та інновацій|Національну медаль в галузі технологій]] 1998 року від президента [[Білл Клінтон|Білла Клінтона]] ''«За їхній винахід операційної системи UNIX та мови програмування С, які разом призвели до величезних вдосконалень в комп'ютерних апаратних, програмних і мережевих системах і стимулювали зростання всієї промисловості, зміцнюючи тим самим американське лідерство у вік інформації»''<ref>''[http://www.bell-labs.com/news/1998/december/9/1.html Ritchie and Thompson &#091;to&#093; Get National Medal of Technology] {{Webarchive|url=https://web.archive.org/web/20060327052807/http://www.bell-labs.com/news/1998/december/9/1.html |date=27 березня 2006 }}'' Bell Labs pre-announcement {{ref-en}}</ref><ref>''[http://www.bell-labs.com/news/1999/april/28/1.html Ritchie and Thompson Receive National Medal of Technology from President Clinton] {{Webarchive|url=https://web.archive.org/web/20031011075017/http://www.bell-labs.com/news/1999/april/28/1.html |date=11 жовтня 2003 }}'' Bell Labs press release {{ref-en}}</ref>. (На офіційному сайті<ref>{{Cite web |url=http://www.uspto.gov/about/nmti/recipients/1998.jsp |title=Архівована копія |accessdate=26 березня 2011 |archive-date=29 червня 2011 |archive-url=https://web.archive.org/web/20110629075850/http://www.uspto.gov/about/nmti/recipients/1998.jsp }}</ref> Національної медалі дещо коротший текст: ''«For their invention of UNIX® operating system and the C programming language, which together have led to enormous growth of an entire industry, thereby enhancing American leadership in the Information Age».'')


=== Премія Цуто́му Кана́й ===
=== Премія Цуто́му Кана́й ===
10 червня 1999 р. ''Комп'ютерне Товариство'' [[Institute of Electrical and Electronics Engineers|Інституту Інженерів з Електроніки та Електротехніки]] нагородило Кена Томпсона {{Не перекладено|Премія Цутому Канай|Премією Цутому Канай|en|Tsutomu Kanai Award}} (премія заснована в 1997 р., Томпсон став першим лауреатом) ''"За створення операційної системи UNIX, яка більше 20 років була ключовою платформою для роботи розподілених систем"''<ref>http://www.computer.org/portal/web/awards/kanai/</ref>.
10 червня 1999&nbsp;р. ''Комп'ютерне Товариство'' [[Інститут інженерів з електротехніки та електроніки|Інституту Інженерів з Електроніки та Електротехніки]] нагородило Кена Томпсона {{Не перекладено|Премія Цутому Канай|Премією Цутому Канай|en|Tsutomu Kanai Award}} (премія заснована в 1997&nbsp;р., Томпсон став першим лауреатом) ''«За створення операційної системи UNIX, яка більше 20 років була ключовою платформою для роботи розподілених систем»''<ref>{{Cite web |url=http://www.computer.org/portal/web/awards/kanai/ |title=Архівована копія |accessdate=2 квітня 2011 |archiveurl=https://web.archive.org/web/20110315090430/http://www.computer.org/portal/web/awards/kanai |archivedate=15 березня 2011 |deadurl=yes }}</ref>.


=== Премія Японії ===
=== Премія Японії ===
У січні 2011 р. Томсон спільно з Рітчі нагороджені {{Не перекладено|Премія Японії|Премією Японії|en|Japan Prize}} ''"За розробку UNIX"''<ref>http://www.japanprize.jp/en/index.html</ref>.
У січні 2011 р. Томсон спільно з Рітчі нагороджені [[Премія Японії|Премією Японії]] ''"За розробку UNIX"''<ref>{{Cite web |url=http://www.japanprize.jp/en/index.html |title=Архівована копія |accessdate=2 квітня 2011 |archive-date=5 березня 2021 |archive-url=https://web.archive.org/web/20210305100956/http://www.japanprize.jp/en/index.html }}</ref>.


== Примітки ==
== Примітки ==
{{reflist}}
{{reflist|2}}


== Посилання ==
== Посилання ==
* [http://khpi-iip.mipk.kharkiv.edu/library/extent/prog/ken/ken.html ''Критика довірливості''. Промова при отриманні Премії Тюрінга]{{ref-ru}}
* [http://khpi-iip.mipk.kharkiv.edu/library/extent/prog/ken/ken.html ''Критика довірливості''. Промова при отриманні Премії Тюрінга] {{Webarchive|url=https://web.archive.org/web/20110315231159/http://khpi-iip.mipk.kharkiv.edu/library/extent/prog/ken/ken.html |date=15 березня 2011 }}{{ref-ru}}



{{IT-people-stub}}
{{Лауреати премії Тюрінга}}
{{Лауреати премії Тюрінга}}
{{Лауреати премії Річарда Геммінга}}
{{Лауреати премії Річарда Геммінга}}
{{ВП-портали|Програмування|США}}
{{ВП-портали|Програмування|США}}

{{DEFAULTSORT:Томпсон Кен}}

{{IT-people-stub}}

{{DEFAULTSORT:Томпсон, Кен}}
[[Категорія:Програмісти США]]
[[Категорія:Програмісти США]]
[[Категорія:Лауреати премії Тюрінга]]
[[Категорія:Лауреати премії Тюрінга]]
[[Категорія:Лауреати Премії Японії]]
[[Категорія:Уродженці Нового Орлеана]]
[[Категорія:Розробники мов програмування]]
[[Категорія:Американські автори творів про технології]]
[[Категорія:Члени Національної інженерної академії США]]
[[Категорія:Члени і члени-кореспонденти Національної академії наук США]]

Поточна версія на 17:23, 10 липня 2024

Кеннет Лейн Томпсон
англ. Kenneth Lane Thompson
Кен Томпсон (зліва) та Деніс Рітчі
Кен Томпсон (зліва) та Деніс Рітчі
Кен Томпсон (зліва) та Деніс Рітчі
Народився4 лютого 1943(1943-02-04) (81 рік)
Новий Орлеан, Луїзіана США США
КраїнаСША США
Діяльністьпрограміст, інформатик
Alma materУніверситет Каліфорнії, Берклі
ГалузьКомп'ютерні науки
ЗакладBell Labs
Entrisphere, Inc
Google Inc.
ЧленствоНаціональна академія наук США
Американська академія мистецтв і наук
Національна інженерна академія США
Association for Computing Machinery[1]
Відомий завдяки:UNIX
мова програмування B
шаховий комп'ютер Belle
UTF-8
Бази даних ендшпілю
Go
Нагороди
Особ. сторінкаcs.bell-labs.co/who/ken/

Ке́ннет Лейн То́мпсон (англ. Kenneth Lane Thompson); нар. 4 лютого 1943 року, знаний в хакерських колах як ken[2], піонер комп'ютерної науки. Пропрацювавши в Bell Labs протягом більшої частини своєї теперішньої кар'єри, Томпсон відомий розробкою мови програмування B (базувалась в основному на мові BCPL), яку він використовував для написання операційної системи Unix під час роботи в проєкті Multics, роботою з мовою програмування C, як один з творців і ранніх розробників операційних систем Unix і Plan 9.

Інші помітні внески Кена Томпсона: робота з регулярними виразами (конструкція Томпсона) і ранніми комп'ютерними текстовими редакторами QED і ed, робота над комп'ютерними шахами, яка включала створення бази даних ендшпілю і шахової машини Belle[en], а останнім часом він став одним з творців мови програмування Go, розробленої Google.

Біографія

[ред. | ред. код]

Томпсон народився в Новому Орлеані, США. Своє дитинство він провів, за його словами як navy brat[3] — дитина кадрового військовослужбовця (див. Military brat (U.S. subculture)[en]). Він здобув ступені бакалавра в 1965 р. і магістра в 1966 р. у галузі електротехніки та інформатики в Університеті Каліфорнії, Берклі, де його керівником магістерської дисертації був Елвін Берлекемп (Elwyn Berlekamp)[4]. В 1966 р. Кен Томпсон почав працювати в Bell Labs.

В 1960-х рр. Томпсон і Денніс Рітчі розробляли операційну систему Multics. Пишучи Multics, Кен Томпсон створив мову програмування Bon. Обоє залишили проєкт Multics, коли Bell Labs відмовилась від нього в 1969 р. Але вони використали досвід проєкту і того ж року стали головними творцями операційної системи Unix. Томпсон вирішив, що Unix потребує мови програмування системи і розробив мову програмування B, яка стала попередницею мови програмування C, згодом розробленої Рітчі.[5]

Томпсон розробив версію редактора QED для CTSS (однієї з перших операційних систем з розподілом часу), яка включала регулярні вирази для пошуку тексту. QED і пізніший редактор Томпсона ed (редактор за замовчуванням в Unix) зробили великий внесок в популярність регулярних виразів, які раніше розглядалися в основному як інструмент (або іграшка) для логіків. Регулярні вирази стали поширеними в програмах обробки текстів в Unix, таких як утиліта grep, і сучасних мовах програмування, таких як Perl; вони є також головною концепцією в текстовому редакторі sam канадського розробника Unix Роба Пайка[en]. Майже всі програми, які працюють з регулярними виразами, тепер використовують певний варіант нотації Томпсона для цих виразів.

Томпсон разом з Робом Пайком[6] у 1992 р. розробив широковживану схему кодування символів UTF-8.

Разом з Джозефом Кондоном (Joseph Condon) він створив апаратне та програмне забезпечення для Belle, чемпіона серед шахових комп'ютерів. Він також написав програми для отримання повного списку ендшпілів, відомого як бази даних ендшпілю для 4, 5 і 6 фігур, що дозволяють програмам для гри в шахи робити найкращі ходи в позиціях, які зберігаються в цих базах. Пізніше за допомогою експерта з ендшпілів Джона Ройкрофта (John Roycroft) Томпсон розповсюдив свої перші результати на CD-ROM.

З книги Пітера Сайбела «Кодери в Роботі: Роздуми про Ремесло Програмування»

[ред. | ред. код]

Ця книга[7] містить інтерв'ю з 15 видатними програмістами. Передмову до інтерв'ю з Кеном Томпсоном Пітер Сайбел (Peter Seibel[8]) починає абзацом: «Кен Томпсон є оригінальним бородатим хакером Unix. Він витратив кар'єру, працюючи над тим, що він вважав цікавим, яке, в різний час, включало аналогові обчислення, системи програмування, регулярні вирази і комп'ютерні шахи.», а закінчує словами: «В цьому інтерв'ю він говорив про свою ранню любов до електроніки, про доволі неортодоксальну академічну кар'єру, що забезпечили йому навчальні курси, коли він був ще студентом і про те, чому його лякає сучасне програмування». На перше питання інтерв'ю: «Як ви навчились програмувати?» Томпсон відповів: «Я завжди був зачарований логікою і навіть у початковій школі я працював над арифметичними задачами у двійковій, все в такому дусі. Просто тому, що я був зачарований».

Нагороди

[ред. | ред. код]

Премія Тюрінга

[ред. | ред. код]

У 1983 році Томпсон та Рітчі разом отримали Премію Тюрінга «За їхню розробку загальної теорії операційних систем і особливо за реалізацію операційної системи UNIX». При отриманні Премії Тюрінга Кен Томпсон виступив з промовою «Reflections on Trusting Trust»[9]Критика довірливості», дослівно «Роздуми про довірливу довіру»). У промові він говорив про найкоротшу самовідтворюючу програму; про те, що компілятор C написаний на С; про те, як в компілятор С можна вбудувати троянського коня (бекдор атака, зараз відома як Томпсон хак), вилучивши його після компіляції з сирцевого коду. Опис такої атаки вважається основоположною роботою в галузі комп'ютерної безпеки. Томпсон робить висновок (мораль): «Ви не можете довіряти тому коду, який ви не створили повністю самі.»

Медаль Річарда Геммінга

[ред. | ред. код]

В 1990 р. Кен Томпсон також спільно з Денісом Рітчі були нагороджені медаллю Річарда Геммінга «За створення операційної системи UNIX та мови програмування С».

Національна медаль в галузі технологій та інновацій

[ред. | ред. код]

27 квітня 1999 р. Томсон і Рітчі отримали Національну медаль в галузі технологій 1998 року від президента Білла Клінтона «За їхній винахід операційної системи UNIX та мови програмування С, які разом призвели до величезних вдосконалень в комп'ютерних апаратних, програмних і мережевих системах і стимулювали зростання всієї промисловості, зміцнюючи тим самим американське лідерство у вік інформації»[10][11]. (На офіційному сайті[12] Національної медалі дещо коротший текст: «For their invention of UNIX® operating system and the C programming language, which together have led to enormous growth of an entire industry, thereby enhancing American leadership in the Information Age».)

Премія Цуто́му Кана́й

[ред. | ред. код]

10 червня 1999 р. Комп'ютерне Товариство Інституту Інженерів з Електроніки та Електротехніки нагородило Кена Томпсона Премією Цутому Канай[en] (премія заснована в 1997 р., Томпсон став першим лауреатом) «За створення операційної системи UNIX, яка більше 20 років була ключовою платформою для роботи розподілених систем»[13].

Премія Японії

[ред. | ред. код]

У січні 2011 р. Томсон спільно з Рітчі нагороджені Премією Японії "За розробку UNIX"[14].

Примітки

[ред. | ред. код]
  1. https://www.acm.org/media-center/2021/january/fellows-2020
  2. ken: /ken/, n. The Jargon File (version 4.4.7). Архів оригіналу за 24 червня 2011. Процитовано 2 лютого 2011.
  3. Ken Thompson: A Brief Introduction [Архівовано 10 жовтня 2011 у Wayback Machine.] - by The Linux Information Project (LINFO)
  4. Thesis Students. math.berkeley.edu (англ.). Архів оригіналу за 15 березня 2021. Процитовано 7 лютого 2011.
  5. Dennis M. Ritchie. The Development of the C Language*. Bell Labs/Lucent Technologies. Архів оригіналу за 3 лютого 2015. Процитовано 18 лютого 2011.
  6. Pike, Rob. Листування Роба Пайка з Кеном Томпсоном та іншими про історію розробки UTF-8. Архів оригіналу за 1 березня 2011. Процитовано 28 лютого 2011.
  7. Seibel, Peter (16 вересня 2009). Coders at Work: Reflections on the Craft of Programming. Apress. Архів оригіналу за 21 квітня 2021. Процитовано 2 червня 2021. (англ.)
  8. Архівована копія. Архів оригіналу за 29 квітня 2011. Процитовано 7 лютого 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  9. Reflections on Trusting Trust. Промова при отриманні Премії Тюрінга. Архів оригіналу за 25 травня 2012. Процитовано 19 лютого 2011.
  10. Ritchie and Thompson [to] Get National Medal of Technology [Архівовано 27 березня 2006 у Wayback Machine.] Bell Labs pre-announcement (англ.)
  11. Ritchie and Thompson Receive National Medal of Technology from President Clinton [Архівовано 11 жовтня 2003 у Wayback Machine.] Bell Labs press release (англ.)
  12. Архівована копія. Архів оригіналу за 29 червня 2011. Процитовано 26 березня 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  13. Архівована копія. Архів оригіналу за 15 березня 2011. Процитовано 2 квітня 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  14. Архівована копія. Архів оригіналу за 5 березня 2021. Процитовано 2 квітня 2011.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)

Посилання

[ред. | ред. код]