Podklad pro panelovou diskusi
OPRAVDOVI PROGRAMATORI NEUZIVAJI PASCAL
---------------------------------------
Ed Post, (C) 1983
Za starych dobrych casu - ve "zlate ere" pocitacu bylo snadne odlisit
muze od chlapcu (v literature oznacenych "Opravdovi muzi" a "Pojidaci
kolacu"). Opravdovi muzi byli ti, kteri skutecne rozumeli programovani
pocitacu. Pojidaci kolacu byli ti, co tomu nerozumeli. Opravdovy
pocitacovy programator rikal veci jako "DO 10 I=1,10" a "ABEND"
(vyslovoval to s velkymi pismeny, abyste rozumeli) a zbytek sveta rikal
veci jako "Pocitace jsou pro mne prilis komplikovane" a nebo "Nemohu se s
pocitacem szit, je tak neosobni". (V predchozi praci [1] je ukazano, ze
opravdovi muzi nejsou vazani na nic, neboji se byt neosobni).
Ovsem, jak je zvykem, casy se meni. Musime se smirit se svetem, v
nemz muze ziskat pocitac mila stara dama ve sve mikrovlnne troube a 12-ti
lety chlapec porazi opravdoveho muze v televizni hre na perzonalnim
pocitaci a perzonalni pocitac si muze koupit kazdy, a take mu muze
porozumet. Opravdovi programatori jsou ohrozeni vyhynutim, existuje
nebezpeci, ze budou nahrazeni vysokoskolskymi studenty s TRS-80.
Je zrejme, ze je potreba ukazat rozdil mezi typickym, vysokoskolsky
vzdelanym hracem video-her a opravdovym programatorem. Ukaze-li se tento
rozdil dostatecne jasne, da se detem sance, aby aspirovaly byt podobni
svym otcum. Pomuze to rovnez zamestnavatelum opravdovych programatoru tim,
ze jim to ozrejmi chybu, ktere se dopousteji, kdyz nahrazuji opravdove
programatory ve svem tymu mladymi hraci her (a setri tim platy).
1.0 Jazyky
Nejsnadnejsi zpusob, jak zjistit, kdo je v davu opravdovy
programator, spociva ve zjisteni, jaky programovaci jazyk pouziva.
Pouziva FORTRAN. Pojidaci kolacu pouzivaji Pascal. Nicolaus Wirth,
tvurce Pascalu, pri jedne sve prednasce byl dotazan, jak vyslovovat jeho
jmeno. Odpovedel: "Muzete me volat jmenem (Wirth) a nebo hodnotou
(Worth)". Z teto poznamky je zrejme, ze N.Wirth je pojidac kolacu.
Opravdovy programator uznava jediny mechanismus predavani parametru
"volanim hodnotou pri navratu - tj. referenci" tak, jak je to
implementovano v kompilatorech IBM/370 FORTRAN G a H. Opravdovy
programator nepotrebuje ke sve praci vsechny tyto abstraktni pojmy, je
uplne stastny, ma-li derovac stitku, kompilator FORTRAN 4 a pivo.
- Opravdovy programator zpracovava seznamy ve FORTRANu.
- Opravdovy programator pracuje s texty ve FORTRANu.
- Opravdovy programator resi zpracovani hromadnych dat (kdyz uz to dela) ve
FORTRANu.
- Opravdovy programator resi umelou inteligenci ve FORTRANu.
Akademici v pocitacovych vedach v poslednich letech tvori vyjetou
kolej strukturovaneho programovani. Tvrdi, ze programum lze snadno
porozumet, kdyz se pri jejich psani pouzivaji nektere specialni konstrukce
a postupy. Ne vsichni se presne shodnou na tom, ktere konstrukce a
priklady pouzivat, aby ukazali jejich konkretni pohled na vec. Temer vzdy
se vejdou na jedinou stranku casopisu - jsou nepresvedcive. Kdyz jsem
opustil skolu, myslel jsem si, ze jsem nejlepsim programatorem na svete.
Umel jsem psat nedostizne tic-tac-toe programy, pouzivat 5 ruznych
programovacich jazyku a psat programy o 1000 radcich, ktere pracovaly.
(Skutecne!!) Pak jsem prisel do skutecneho sveta. Mym prvym ukolem bylo
precist si program ve FORTRANU, ktery mel 200000 radku, porozumet mu, a
pak ho 2x urychlit. Kazdy opravdovy programator vam rekne, ze veskere
strukturovane programovani v celem svete vam v takovem pripade nepomuze,
chce to talent. Nebot:
- Opravdovym programatorum nevadi pouzivani GOTO
- Opravdovy programator muze napsat cyklus DO na 5 stran a nesplete se.
- Opravdovy programator miluje aritmeticke IF, program dela zajimavejsi.
- Opravdovy programator pise samomodifikujici se programy, zvlaste v tom
pripade, kdyz muze usetrit 20 ns v nejvnitrnejsim cyklu.
- Opravdovy programator nepotrebuje poznamky - vlastni kod je zrejmy.
- Ponevadz FORTRAN neobsahuje strukturovane IF, REPEAT, ..... UNTIL ani
CASE, opravdovy programator nezna starosti s jejich pouzitim.
Abstraktni datove typy, struktury, ukazatele, seznamy, retezce - to
jsou pojmy v jistych kruzich pomerne popularni. Wirth (vyse zmineny
pojidac kolacu) skutecne napsal celou knihu o tom, jak psat programy
zalozene na datovych strukturach (Algoritmy + Datove struktury = Programy)
a ne jinak. Jak vi kazdy opravdovy programator, jedinou uzitecnou datovou
strukturou je pole. Retezce, seznamy, struktury, mnoziny - to vse jsou
specialni pripady poli a lze s nimi tak zachazet a neni nutne vas
programovaci jazyk komplikovat. Nejhorsi vec na predstave datovych typu
je, ze je nutno je deklarovat, zatimco jazyky pro opravdove programovani,
jak vsichni zname, maji implicitni urcovani typu zalozene na 1.znaku 6-ti
znakoveho jmena promenne.
2.0 Operacni systemy
Jaky typ operacniho systemu pouziva opravdovy programator? CP/M ?
Boze chran - CP/M je pres vsechny jeho klady hracickovy operacni system.
CP/M mohou pochopit dokonce i postarsi damy a absolventi zakladni skoly.
UNIX je ovsem ponekud komplikovanejsi - typicky UNIXacky pisalek si
nikdy nevzpomene, jak se tento tyden vola prikaz PRINT - ale kdyz system
ma pravo vypadnout z cinnosti, pak je UNIX pouze glorifikovanou televizni
hrou. Lide nepracuji na UNIXovych systemech seriozne: posilaji si vtipy
kolem sveta pomoci site UUCP a pisi dokonale hry a vedecke clanky.
Ne, vas opravdovy programator pouziva OS/370. Dobry programator ve
svem manualu JCL nalezne popis chyby IJK051 a porozumi mu. Velky
programator umi psat JCL programy, aniz by se podival do manualu. Skutecne
velmi dobry programator umi najit chybu i v 6MB vypisu operacni pameti, a
to aniz by pouzil hexadecimalni kalkulator (videl jsem to skutecne delat).
OS je skutecne znamenity system. Lze na nem ztratit dny prace kvuli
jedne chybejici mezere, coz podnecuje programatorsky tym k ostrazitosti.
Nejlepsi zpusob styku se systemem je pres derovac dernych stitku.
Nekteri lide prohlasuji, ze na OS/370 bezi vicepristupovy terminalovy
system, ale po peclivem studiu jsem dospel k zaveru, ze se tito lide myli.
3.0 Programovaci prostredky
Jaky typ prostredku pouziva opravdovy programator? Teoreticky plati,
ze opravdovy programator muze pocitaci zadavat svuj program klavesami na
prednim panelu pocitace. V davne minulosti, kdy pocitace mely predni
panel, se to tak skutecne obcas delalo. Vas typicky opravdovy programator
znal cely zavlekac v hexadecimalnim vyjadreni zpameti a namackal ho
kdykoliv jej vas program porusil (pripomenme si - pamet byla pamet, pri
vypnuti napajeni jste nic nezapomeli. Dnes pamet budto zapomene veci,
ktere jste zapomenout nechteli, nebo si pamatuje veci dlouho pote, kdy by
bylo lepe na ne zapomenout). Legenda vypravuje, ze Seymore Cray, tvurce
superpocitace Cray 1 a vetsiny pocitacu fy Control Data, skutecne namackal
prvni OS do pocitace CDC7600 pri jeho prvnim zapnuti site pres jeho predni
panel a to zpameti. Nutno rici, ze Seymore byl opravdovy programator.
Jednim z mych favoritu na opravdoveho programatora byl systemovy
programator od Texas Instruments. Jednoho dne ho zavolal telefonem
uzivatel, jehoz system se zboural uprostred uklidu vysoce dulezite prace.
Jim byl schopny opravit poruchu po telefonu, donutil uzivatele, aby si
namackal diskove V/V operace z panelu, opravil systemove tabulky v
hexadecimalnim vyjadreni a aby mu precetl registry zpet do telefonu.
Pouceni z teto prihody: zatimco opravdovy programator obvykle zahrnuje
"do sve opravarske brasny" derovac stitku a tiskarnu, tehoz muze dosahnout
telefonem a z predniho panelu.
V nekterych spolecnostech uz editovani textu nespociva v tom, ze
desitky inzenyru sedi u derovace dernych stitku. Skutecne. V budove kde
pracuji, neni jediny derovac dernych stitku. Opravdovy programator musi
svoji praci v takovem pripade vykonavat pomoci programu typu "text editor"
ap. Vetsina systemu nabizi celou radu textovych editoru, opravdovy
programator si musi peclive vybrat ten editor, ktery nejlepe odpovida jeho
zivotnimu stylu. Mnozi lide veri, ze nejlepsi textove editory na svete
byly napsany ve vyzkumnem stredisku fy XEROX v Palo Altu pro jejich
pocitace ALTO a DORADO. Bohuzel zadny opravdovy programator nikdy
nepouzije pocitac, jehoz operacni system se jmenuje Vsedni hovor a urcite
nebude hovorit k pocitaci s mysi.
Nektere myslenky pouzite v editorech fy XEROX byly zahrnuty do
editoru bezicich pod mnohem vhodneji pojmenovanych operacnich systemech -
prikladem muze byt EMANCE a VI. Problem s temito editory spociva v tom,
ze opravdovi programatori povazuji vlastnost "Co vidis je to, co dostanes"
za stejne spatnou jak u textovych editoru, tak i u zen. Ne, opravdovy
programator si zada editor typu "dostanes to, co zadas" - editor
komplikovany, tajemny, mocny, neodpoustejici, nebezpecny. Takovym je
treba TECO.
Zjistilo se, ze posloupnost prikazu TECO pripomina mnohem vice
poruchy na komunikacni lince, nez citelny text. Jednou ze vstupnich her,
ktera se da hrat s editorem TECO spociva v tom, ze zadate svoje jmeno jako
prikaz a zkusite uhodnout, co to udela. Zatimco budete rozpravet s TECO o
chybe vstupnich dat, vas program se pravdepodobne zrusi nebo - coz je
horsi - se do jiz odladeneho programu zavlecou nenapadne a tajemne chyby.
Z tohoto duvodu opravdovi programatori nejsou ochotni editovat
program, jenz uz temer chodi. Radeji udelaji zaplatu primo do binarniho
kodu programu na disku a to pomoci carokrasneho programu zvaneho SUPERZAP
(nebo pomoci jeho ekvivalentu na strojich jinych nez jsou stroje IBM).
Ten pracuje tak dobre, ze mnohe cinne programy IBM systemu nejsou v zadnem
vztahu ke svym puvodnim FORTRANovskym textum. Mnohdy neni uz puvodni
zdrojovy text dostupny vubec. Kdyz vyvstane potreba upravit takovy
program, zadny manazer ci sef nebude ani chvili uvazovat, ze by na tuto
praci poslal nekoho jineho nez opravdoveho programatora - kterykoliv
strukturovany programator typu pojidac kolacu by ani nevedel, kde ma
zacit.
4.0 Co opravdovy programator nepouziva?
- Fortranske pre-procesory typu MORTRAN ci RAFTOR, kucharske umeni programovat
- to je neco ohromneho pro delani kolacu.
- Ladici program na urovni symbolickeho jazyka. Opravdovy programator umi cist
vypisy operacni pameti.
- Kompilator provadejici kontrolu prekroceni mezi poli. Takove kompilatory
dusi tvorivost, znemoznuji vetsinu zajimavych pouziti prikazu EQUIVALENCE
a znemoznuji delat zmeny operacniho systemu zadanim zaporneho indexu. A co je
nejhorsi, kontrola prekroceni mezi snizuje efektivnost.
- Knihovni systemy zdrojovych programu. Opravdovy programator ma svuj program
zamceny na dernych stitcich, coz mu znemoznuje ponechat svuj program
nestrezeny [5].
5.0 Opravdovy programator pri praci
Kde typicky opravdovy programator pracuje? Jaky typ programu je pro
vynalozeni usili tak talentovanych jedincu dostatecne cenny? Muzete si
byt jisti, ze zadny opravdovy programator neumre pri psani programu pro
zpracovani dat v COBOLu a nebo pri trideni. Opravdovy programator si zada
ukoly svetove dulezitosti.
- Opravdovy programator pracuje pro Narodni laborator v Los Alamos, kde
pise programy simulujici atomove bomby na superpocitaci Cray 1.
- Opravdovy programator pracuje pro Narodni bezpecnostni urad a dekoduje
odposlouchany radiovy provoz Sovetu.
- Bylo dulezite, aby tisice opravdovych programatoru pracovalo pro NASA, aby
se Americane dostali na Mesic a zpet drive nez Soveti.
- Pocitace v raketoplanu byly programovany opravdovymi programatory.
- Opravdovi programatori pracuji pro Boeing, kde navrhuji operacni systemy pro
krizujici rakety.
Nekteri nejdesivejsi ze vsech opravdovych programatoru pracuji v
Kalifornii v Jet Propulsion Labs. Mnozi z nich znaji cely operacni system
kosmickych lodi Pioneer a Voyager zpameti. S kombinaci ohromnych pozemnich
FORTRANskych programu a malych assemblerovskych programu v kosmicke lodi
jsou schopni udelat neuveritelne navigacni a improvizacni vykony - strefit
se do desetikilometroveho okna v pripade Saturnu a to po 5-ti letech
pobytu ve vesmiru, opravit nebo obejit porouchane cidlo, baterii ap.
Rika se, ze jeden opravdovy programator zorganizoval v lodi Voyager
doplneni programu pro rozpoznani, a to do nekolika stovek nevyuzitych bytu
v pameti. Doplnek programu nalezl, urcil umisteni a vyfotografoval novy
mesic Jupitera.
Stavajici plan platny pro kosmickou lod Gallileo je zalozen na
vyuziti pomoci gravitace Marsu pri ceste k Jupiteru. Draha teto lodi
prochazi 80 +/-3 km od povrchu Marsu. Nikdo nebude duverovat programu
psanemu v PASCALu (nebo Pascalovskemu programatoru) tak, aby mu sveril
navigaci v techto tolerancich.
Muzeme rici, ze mnozi ze svetovych opravdovych programatoru pracuji
pro vladu USA - predevsim pro ministerstvo obrany. Tak to ma byt. V
posledni dobe se ovsem formuje na nebi opravdovych programatoru cerny
mrak. Vypada to tak, ze nekteri vysoce postaveni pojidaci kolacu v
ministerstvu obrany rozhodli, ze vsechny obranne programy budou psany ve
stejnem velkolepem unifikovanem jazyku zvanem ADA ((C), DoD). Prozatim se
zda, ze ADA byla orientovana tak, aby se stala jazykem, ktery by bojoval
proti pouckam opravdoveho programovani - jazykem se strukturou, s datovymi
typy a stredniky. Kratce, jazyk urceny pro zmrzaceni tvorivosti typickeho
opravdoveho programatora. Nastesti jazyk prijaty ministerstvem obrany ma
dost zajimavych vlastnosti, ktere ho necini nebezpecnym - je neuveritelne
slozity, zahrnuje metody, jak si vymenovat zpravy s operacnim systemem a
jak usporadat pamet a Edgar Dijkstra ho nemiluje. (Dijkstra, jsem si
jist, ze ho znate, byl auterem "GoTos Considered Harmful" - zakladni prace
programovaci metodologie, opevovane jak pascalovskymi programatory, tak
pojidaci kolacu). Mimo to, opravdovy programator umi psat FORTRANske
programy v kteremkoliv jazyce.
Opravdovy programator muze pristoupit ke kompromisum ve svych
principech a muze pracovat i na necem mene trivialnim, nez je zniceni
zivota ve forme, jak ho zname. To za predpokladu, ze to prinese dost
penez. Existuje napr. nekolik opravdovych programatoru tvoricich
televizni hry u fy Atari. (ale nehraji je, opravdovy programator v kazdem
okamziku vi, jak nad strojem zvitezit - to neni zadny problem). Kazdy kdo
pracuje u fy Lucas Film, je opravdovy programator. (Bylo by ztrestene
odmitnout penize od 50-ti milionu fanousku hry Star Trek). Mnozstvi
opravdovych programatoru pracujicich v pocitacove grafice je ponekud pod
normou; to predevsim proto, ze dosud nikdo nenalezl pro pocitacovou
grafiku vazne pouziti. Na druhe strane, veskera pocitacova grafika je ve
FORTRANu, takze existuje mnozstvi lidi, kteri radeji delaji grafiku, nez
aby psali programy v COBOLu.
6.0 Opravdovy programator pri hre
Obecne plati, ze opravdovy programator si hraje stejnym zpusobem jako
pracuje - to je s pocitacem. Stale se divi, ze ho jeho zamestnavatel
skutecne plati za to, aby delal to, co by mel delat, a to pri jakekoliv
legraci (i kdyz peclive dba na to, aby tento nazor nevyjadroval moc
nahlas). Opravdovy programator obcas opusti svuj urad. Bud uz proto, aby
vysel na cerstvy vzduch anebo na pivo ci na oboje. Mezi jiste typy pro
rozpoznani opravdoveho programatora mimo vypocetni stredisko patri:
- Na vecirku opravdovi programatori v koutku hovori o bezpecnosti
operacnich systemu a o tom, jak ji obejit.
- Pri fotbalu opravdovy programator porovnava hru proti sve simulaci
natistene na 11 az 14 stranach skladaneho papiru.
- V laznich u more kresli opravdovy programator do pisku blokova schemata.
- Pri pohrbu je opravdovy programator jedinec, ktery rika: "Ubohy Jiri. A ten
tridici program mu tesne pred tim, nez dostal infarkt, temer chodil".
- V samoobsluze je opravdovy programator ten, ktery trva na tom ze si na
pokladne namacka cenu konzerv sam, ponevadz nikdy neuveri, ze by derovacka
neco naderovala napoprve spravne.
7.0 Prirozeny domov opravdoveho programatora
Jake prostredi je pro opravdoveho programatora nejlepsi? Pro sefa
opravdovych programatoru je to velmi dulezita otazka. Kdyz uvazime, kolik
penez stoji udrzeni jednoho jedince v tymu, je snazsi dat ho (nebo ji) do
prostredi, kde muze delat svoji praci pohodlne.
Typicky opravdovy programator zije u terminalu. Mezi to, co obklopuje
tento terminal patri:
- Vypisy vsech programu, na kterych opravdovy programator kdy delal,
nakupene v priblizne chronologickem poradi na kazdem volnem miste podlahy
kancelare.
- Nekolik temer ci uplne plnych salku studene kavy. Obcas v teto kave plave
spacek nedokourene cigarety. Nekdy takovy salek obsahuje i slupky od
pomerance.
- Pokud neni velmi dobrym programatorem, pak zde budou kopie manualu
JCL a Principu operaci otevrene na nekterem zajimavem miste.
- Na stene visi kalendar pro rok 1969 tisteny tiskarnou pocitace s obrazkem
Snoopyho.
- Po koberci jsou pohazeny obaly od masla a plnenych syrovych tycinek
(takovych, ktere se nechaji zvetrat a vyschnout jeste v obchode, aby se uz
nemohly vice pokazit v automatu).
- Na stole lezi sablona pro kresleni blokovych schemat. Tu zde nechal
predchozi majitel kancelare. (Opravdovi programatori pisi programy,
ne dokumentaci. To nechavaji na lidech od udrzby).
Opravdovy programator je schopen pod natlakem ve stresu pracovat 30,
40 i 50 hodin. Je fakt, ze tento zpusob prace preferuje. Dlouha doba
odezvy systemu opravdoveho programatora neobtezuje, dava mu sanci, aby si
mezi kompilacemi zdrimnul. Neni-li vyvinut na opravdoveho programatora
dostatecny tlak, pak ma snahu komplikovat veci tim, ze pracuje stale na
stejne, male, ale zajimave casti problemu prvnich devet tydnu a zbytek pak
dodela za tyden. To nezpusobuje peklo pouze jeho sefovi, ktery zoufa nad
tim, ze se projekt nedokonci, ale vytvari to i vhodnou omluvu, proc se
nedela dokumentace. Obecne plati:
- Zadny opravdovy programator nepracuje od 9 do 5 (tedy ve dne).
- Opravdovy programator muze, ale nemusi znat jmeno sve zeny. Zna ovsem
zpameti celou kodovou tabulku ASCII ci EBCDIC.
- Opravdovy programator neumi varit. Obchody s potravinami nejsou otevreny
rano ve 3 hodiny.
8.0 Budoucnost
Jaka je budoucnost? Je v zajmu opravdovych programatoru, aby
posledni generace programatoru byla vychovana se stejnym nazorem na zivot
jako jejich starsi kolegove. Mnozi z nich uz ani nevideli predni panel
pocitace. Soucasni absolventi strednich skol neumi resit aritmeticke
operace v sestnactkove soustave bez vhodne kalkulacky. Soucasni
absolventi vysokych skol jsou mekci, jsou chraneni pred programatorskou
realitou ladicimi systemy na urovni zdrojoveho jazyka, editory, ktere
pocitaji zavorky a uzivatelsky orientovanymi operacnimi systemy. A co je
nejhorsi, mnozi z domelych pocitacovych vedcu delaji vse pro to, aby bylo
mozne absolvovat vysokou skolu bez znalosti FORTRANu. Jsme urceni k tomu,
abychom se stali vyrobci UNIXovskych pisalku a PASCALskych programatoru?
Na zaklade svych zkusenosti mohu rici, ze budoucnost opravdovych
programatoru je svetla. Ani OS/370 ani FORTRAN neprokazuji zadne znameni
ustupu, a to navzdory veskeremu usili PASCALskych programatoru na celem
svete. Ztroskotaly i mnohe zaludne triky jako je pridani strukturovanych
ridicich konstrukci do FORTRANu. Samozrejme, mnozi vyrobci pocitacu
prichazeji s kompilatorem FORTRANu 77, ale kazdy takovy kompilator ma
zpusob, jak vratit sebe sama zpet do kompilatoru FORTRANu 68 (zadanim
prikazu na stitku) a kompilovat cyklus DO tak, jak Buh minil, ze se to da
delat.
UNIX uz dale nemuze byt tak nedobry k opravdovym programatorum jako
byl. Posledni verze UNIXu je pro opravdove programatory z hlediska
operacniho systemu cenna - nabizi dva ruzne a vzajemne nekompatibilni
uzivatelske interfacy, tajemny a komplikovany driver dalnopisu a virtualni
pamet. Kdyz pomineme skutecnost, ze UNIX je strukturovany, programovani v
C mohou opravdovi programatori ocenit: zadna kontrola typu, jmena mohou
mit 7 (10?, 8?) znaku a dodany uzitek datoveho typu ukazatel je k vyhozeni
- podobne jako mit na jednom miste nejlepsi casti jazyka FORTRAN a
assembleru (a to nemluvime o define).
Ne, budoucnost neni tak spatna. Proc v poslednich nekolika letech
dokonce i popularni tisk komentuje jasnou novou urodu pocitacovych hrdinu
a pisalku opoustejicich mista jako je Stanford ci MIT [7,8].
Ze vsech dukazu plyne, ze duch opravdoveho programovani lezi na
techto mladych muzich a zenach. Pokud existuji spatne definovane cile,
bizardni chyby a nerealne plany, jsou zde opravdovi programatori, kteri
priskoci a problem vyresi, dokumentaci nechaji na pozdeji.
At zije FORTRAN !
9.0 Literatura
[1] Feirstein,B., Real Men Don't Eat Quiche, N.Y., Pocket Books, 1982
[2] Wirth,N., Algorithm + Data Structure = Programs, Prentice Hall, 1976
[3] Xerox PARC editors ....
[4] Finseth,C., Theory and Practice of Text Editor - or a cook-book for
EMACS, N.S. Thesis, MIT/LCS/TM-165, 1980
[5] Weinberg,Q., The Psychology of Computer Programming, N.Y.,
Van Nostrand Reinkold, 1971
[6] Dijkstra,E., On the GREEN language submitted to the DOD, Sigplan Notices,
Vol3, No.10, Oct. 1978
[7] Rose,Frank, Joy of Macking, Science 82, Vol.3, No.9, Nov. 1982
[8] The Hacker Papers, Psychology Today, Aug. 1980, Oct. 1978
[7] Rose,Frank, Joy of Macking, Science 82, Vol.3, No.9, Nov. 1982
[8] The Hacker Papers
|