Історія Мела (англ. The Story of Mel) — твір, представник комп'ютерного фольклору, що став широковідомим завдяки Usenet і Файлові Жаргону. Головна дійова особа історії — Мел Кей (англ. Mel Kaye), приклад , чиї навички і майстерність у програмуванні є предметом захоплення колег. Автором твору є Ед Нейтер (англ. Ed Nather).
Сюжет
Нейтер описує надзвичайні здібності до програмування його колишнього колеги Мела, що працює у корпорації [en]. Твір було спочатку написано прозою, але пізніше хтось модифікував його у «поезію вільного стилю», що широко розповсюдилася завдяки комп'ютерним мережам і Usenet.
Про Мела Кея мало що відомо, крім того, що він здійснив «більшість роботи з програмування» компілятора ACT-1 (1959 рік) для комп'ютера [en] фірми Royal McBee.. Нейтер описує Мела як людину, що уникає використання оптимізувального асемблера, натомість надаючи перевагу «ручному» кодуванню з максимальним використанням можливостей машинного коду комп'ютера і деяких його особливостей (таких, наприклад, як реалізація програмної затримки через період обертання магнітного барабану, що слугував головною оперативною пам'яттю машини).
У історії розповідається, як Мелові доручили переписати програму, що грає у блекджек, з LGP-30 на новіший комп'ютер (терміну «портування програмного забезпечення» тоді не існувало). Щоб відвідувачі на виставках, де мав показуватися новий комп'ютер, не засмучувалися, керівництво компанії наказало Мелові модифікувати програму: вона мала враховувати позицію спеціального перемикача на консолі, щоб у визначеному його положенні користувачі комп'ютера завжди вигравали. Кею така ідея вкрай не сподобалася, втім під тиском менеджменту він все-таки додав таку функціональність — але «з точністю до навпаки»: якщо перемикач активували, то не людина, а комп'ютер завжди вигравав у «блекджек».
Кей звільнився, а Нейтера попросили «полагодити баг». Під час аналізу коду він був спантеличений тим, що програма хоч і мала нескінченний цикл, але лічильник команд постійно виходив з-за меж цього циклу. Врешті-решт він зрозумів, що програма реалізовувала код, який модифікує сам себе під час обробки елементів масиву, і що використовується програмне переповнення. Додавання 1 до адреси інструкції x зазвичай просто збільшувало адресу до x+1, але якщо x було максимальною дозволеною адресою, до відбувалося переповнення і результат ставав 0. На додачу до цього комп'ютер модифікував біти коду операції, так що в підсумку виходила операція «перехід до адреси 0». Така техніка програмування настільки вразила Нейтера, що він вирішив відмовитися від модифікацій, і відрапортував керівництву, що не зміг знайти помилки.
Історія створення
Есей був опублікований у групі Usenet «net.followup» 21 травня 1983 року користувачем utastro!nather
(адреса email Еда Нейтера у той час).
Комп'ютери для фірми Royal McBee виготовлялися компанією , і документація на програму «блекджек» написана самим Мелом Кеєм. У серпневому за 1956 рік номері журналу «Librazette» компанії Librascope є історія навчання роботі на LGP-30, де згадується, що робота деякі інженерів Librascope буде оплачуватися фірмою Royal McBee, і серед цих інженерів є ім'я Мела Кея.
На обкладинці цього номера журналу є фотографія, де знято програмістів-новачків і їх інструкторів, з Мелом Кеєм включно.
Див. також
У Вікіпедії є |
- [en]
Джерела
- Raymond, Eric S., ред. (1 липня 1992). . line 20505. Архів оригіналу за 9 березня 2017. Процитовано 1 липня 2014.
- Matt Crawford (20 листопада 1984). . Newsgroup: net.jokes. Архів оригіналу за 4 листопада 2012. Процитовано 9 грудня 2018.
- . Архів оригіналу за 24 грудня 2018. Процитовано 9 грудня 2018.
- . www.cs.utah.edu. Архів оригіналу за 9 лютого 2020. Процитовано 9 грудня 2018.
- Bill von Hagen (1 червня 1994). New Light on the Legend of Mel. .
- . FOLDOC. Архів оригіналу за 27 листопада 2018. Процитовано 9 грудня 2018.
In particular, Mel Kaye of Royal McBee...
- (PDF). The Librazette. Librascope Inc. Архів оригіналу (PDF) за 28 січня 2018. Процитовано 9 грудня 2018.
- . the Librazette. Librascope Inc. Архів оригіналу за 30 листопада 2018. Процитовано 9 грудня 2018.
Посилання
- (21 травня 1983), , Greg Lindahl, архів оригіналу за 9 березня 2017, процитовано 9 березня 2017 (NB. A copy of the original prose version.)
- (21 травня 1983), , Rob Stampfli, архів оригіналу за 12 лютого 2018, процитовано 11 лютого 2018 (A completely original copy of Ed Nather's Usenet post, with headers)
- (12 вересня 2003) [1983-05-21], , , архів оригіналу за 9 березня 2017, процитовано 9 березня 2017 (NB. Punctuation added/corrected for readability. Contains link to program tape of blackjack for LGP-30)
- Jennings, Tom, ред. (30 листопада 2000) [1956-10-18], , архів оригіналу за 9 березня 2017, процитовано 9 березня 2017 (Mel Kaye's signature] on a coding sheet for the LGP-30.)
- , (PDF), USA: , Program W1-01.0, архів оригіналу (PDF) за 9 березня 2017, процитовано 8 березня 2017 (NB. Presumably the subject of the original story.)
- Seibel, James (8 квітня 2015), (англ.), архів оригіналу за 18 травня 2018, процитовано 18 лютого 2018 (Детальний аналіз історії, з поясненням технічних деталей.)
- Macho programmers, drum memory and a forensic analysis of 1960s machine code. freeCodeCamp.org. 2 квітня 2018. Contains even more technical details
- van den Bogaard, Adrienne (2008). . Studium. 2: 128-144. Архів оригіналу за 15 серпня 2018. Процитовано 14 серпня 2018.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Istoriya Mela angl The Story of Mel tvir predstavnik komp yuternogo folkloru sho stav shirokovidomim zavdyaki Usenet i Fajlovi Zhargonu Golovna dijova osoba istoriyi Mel Kej angl Mel Kaye priklad chiyi navichki i majsternist u programuvanni ye predmetom zahoplennya koleg Avtorom tvoru ye Ed Nejter angl Ed Nather SyuzhetNejter opisuye nadzvichajni zdibnosti do programuvannya jogo kolishnogo kolegi Mela sho pracyuye u korporaciyi en Tvir bulo spochatku napisano prozoyu ale piznishe htos modifikuvav jogo u poeziyu vilnogo stilyu sho shiroko rozpovsyudilasya zavdyaki komp yuternim merezham i Usenet Pro Mela Keya malo sho vidomo krim togo sho vin zdijsniv bilshist roboti z programuvannya kompilyatora ACT 1 1959 rik dlya komp yutera en firmi Royal McBee Nejter opisuye Mela yak lyudinu sho unikaye vikoristannya optimizuvalnogo asemblera natomist nadayuchi perevagu ruchnomu koduvannyu z maksimalnim vikoristannyam mozhlivostej mashinnogo kodu komp yutera i deyakih jogo osoblivostej takih napriklad yak realizaciya programnoyi zatrimki cherez period obertannya magnitnogo barabanu sho sluguvav golovnoyu operativnoyu pam yattyu mashini U istoriyi rozpovidayetsya yak Melovi doruchili perepisati programu sho graye u blekdzhek z LGP 30 na novishij komp yuter terminu portuvannya programnogo zabezpechennya todi ne isnuvalo Shob vidviduvachi na vistavkah de mav pokazuvatisya novij komp yuter ne zasmuchuvalisya kerivnictvo kompaniyi nakazalo Melovi modifikuvati programu vona mala vrahovuvati poziciyu specialnogo peremikacha na konsoli shob u viznachenomu jogo polozhenni koristuvachi komp yutera zavzhdi vigravali Keyu taka ideya vkraj ne spodobalasya vtim pid tiskom menedzhmentu vin vse taki dodav taku funkcionalnist ale z tochnistyu do navpaki yaksho peremikach aktivuvali to ne lyudina a komp yuter zavzhdi vigravav u blekdzhek Kej zvilnivsya a Nejtera poprosili polagoditi bag Pid chas analizu kodu vin buv spantelichenij tim sho programa hoch i mala neskinchennij cikl ale lichilnik komand postijno vihodiv z za mezh cogo ciklu Vreshti resht vin zrozumiv sho programa realizovuvala kod yakij modifikuye sam sebe pid chas obrobki elementiv masivu i sho vikoristovuyetsya programne perepovnennya Dodavannya 1 do adresi instrukciyi x zazvichaj prosto zbilshuvalo adresu do x 1 ale yaksho x bulo maksimalnoyu dozvolenoyu adresoyu do vidbuvalosya perepovnennya i rezultat stavav 0 Na dodachu do cogo komp yuter modifikuvav biti kodu operaciyi tak sho v pidsumku vihodila operaciya perehid do adresi 0 Taka tehnika programuvannya nastilki vrazila Nejtera sho vin virishiv vidmovitisya vid modifikacij i vidraportuvav kerivnictvu sho ne zmig znajti pomilki Istoriya stvorennyaEsej buv opublikovanij u grupi Usenet net followup 21 travnya 1983 roku koristuvachem utastro nather adresa email Eda Nejtera u toj chas Komp yuteri dlya firmi Royal McBee vigotovlyalisya kompaniyeyu i dokumentaciya na programu blekdzhek napisana samim Melom Keyem U serpnevomu za 1956 rik nomeri zhurnalu Librazette kompaniyi Librascope ye istoriya navchannya roboti na LGP 30 de zgaduyetsya sho robota deyaki inzheneriv Librascope bude oplachuvatisya firmoyu Royal McBee i sered cih inzheneriv ye im ya Mela Keya Na obkladinci cogo nomera zhurnalu ye fotografiya de znyato programistiv novachkiv i yih instruktoriv z Melom Keyem vklyuchno Div takozhU Vikipediyi ye en DzherelaRaymond Eric S red 1 lipnya 1992 line 20505 Arhiv originalu za 9 bereznya 2017 Procitovano 1 lipnya 2014 Matt Crawford 20 listopada 1984 Newsgroup net jokes Arhiv originalu za 4 listopada 2012 Procitovano 9 grudnya 2018 Arhiv originalu za 24 grudnya 2018 Procitovano 9 grudnya 2018 www cs utah edu Arhiv originalu za 9 lyutogo 2020 Procitovano 9 grudnya 2018 Bill von Hagen 1 chervnya 1994 New Light on the Legend of Mel FOLDOC Arhiv originalu za 27 listopada 2018 Procitovano 9 grudnya 2018 In particular Mel Kaye of Royal McBee PDF The Librazette Librascope Inc Arhiv originalu PDF za 28 sichnya 2018 Procitovano 9 grudnya 2018 the Librazette Librascope Inc Arhiv originalu za 30 listopada 2018 Procitovano 9 grudnya 2018 Posilannya 21 travnya 1983 Greg Lindahl arhiv originalu za 9 bereznya 2017 procitovano 9 bereznya 2017 NB A copy of the original prose version 21 travnya 1983 Rob Stampfli arhiv originalu za 12 lyutogo 2018 procitovano 11 lyutogo 2018 A completely original copy of Ed Nather s Usenet post with headers 12 veresnya 2003 1983 05 21 arhiv originalu za 9 bereznya 2017 procitovano 9 bereznya 2017 NB Punctuation added corrected for readability Contains link to program tape of blackjack for LGP 30 Jennings Tom red 30 listopada 2000 1956 10 18 arhiv originalu za 9 bereznya 2017 procitovano 9 bereznya 2017 Mel Kaye s signature on a coding sheet for the LGP 30 PDF USA Program W1 01 0 arhiv originalu PDF za 9 bereznya 2017 procitovano 8 bereznya 2017 NB Presumably the subject of the original story Seibel James 8 kvitnya 2015 angl arhiv originalu za 18 travnya 2018 procitovano 18 lyutogo 2018 Detalnij analiz istoriyi z poyasnennyam tehnichnih detalej Macho programmers drum memory and a forensic analysis of 1960s machine code freeCodeCamp org 2 kvitnya 2018 Contains even more technical details van den Bogaard Adrienne 2008 Studium 2 128 144 Arhiv originalu za 15 serpnya 2018 Procitovano 14 serpnya 2018