\input style
\chapter{predislovie redaktora perevoda}

pROGRAMMIROVANIE BOGATO I MNOGOOBRAZNO. vEDX KAZHETSYA NET TAKOJ SFERY 
CHELOVECHESKOJ DEYATELXNOSTI, GDE NELXZYA BYLO BY  S POLXZOJ PRIMENITX 
VYCHISLITELXNUYU MASHINU DLYA OCENKI, INFORMACIONNO-SPRAVOCHNOGO OBSLUZHIVANIYA,
PLANIROVANIYA, MODELIROVANIYA I T. P. i |TO MNOGOOBRAZIE ZADACH PEREHODIT 
V MNOGOOBRAZIE PROGRAMM, KOTORYE DOLZHNY RAZRABATYVATX PROGRAMMISTY. 
oNI PYTAYUTSYA SPRAVITXSYA S |TIM MNOGOOBRAZIEM, "ZAKLYUCHIV" EGO V 
PROBLEMNO-ORIENTIROVANNYE YAZYKI PROGRAMMIROVANIYA. yaZYKI VBIRAYUT V SEBYA 
SPECIFICHESKIE CHERTY KONKRETNYH SFER PROGRAMMIROVANIYA --- HARAKTERNYE STRUKTURY 
DANNYH, PRINCIPY ORGANIZACII TIPICHNYH PROCESSOV, SOOTVETSTVUYUSHCHUYU 
TERMINOLOGIYU --- I TAKIM OBRAZOM DELAYUT SAM PROCESS PROGRAMMIROVANIYA BOLEE
UNIVERSALXNYM. oDNOVREMENNO ONI OSVOBOZHDAYUT PROGRAMMISTOV OT NEOBHODIMOSTI 
DETALIZIROVATX PROGRAMMY DO UROVNYA SLISHKOM MELKIH MASHINNYH KOMAND
I DAZHE OT NEOBHODIMOSTI ZNATX OSOBENNOSTI KONKRETNYH VYCHISLITELXNYH MASHIN. 
bOLEE TOGO, OPERACIONNYE SISTEMY PRIZVANY PREVRATITX VYCHISLITELXNYE MASHINY 
IZ PREDMETA POSTOYANNOGO BESPOKOJSTVA  V "SUSHCHESTVA", KOTORYE SAMI ZABOTYATSYA
O PROGRAMMISTE I GOTOVY  OKAZYVATX VSYACHESKIE USLUGI EMU I EGO PROGRAMME.

i TEM NE MENEE, POSLE TOGO, KAK LYUBAYA BOLEE ILI MENEE SLOZHNAYA ZADACHA 
SFORMULIROVANA (PUSTX DAZHE V ADEKVATNYH I UDOBNYH TERMINAH) I MASHINA VYBRANA
(PUSTX DAZHE V SAMOM DELE GOTOVAYA K VSEVOZMOZHNYM USLUGAM), KAZHDYJ PROGRAMMIST 
SNOVA I SNOVA OSTAETSYA ODIN NA ODIN SO SVOEJ SOBSTVENNOJ ZADACHEJ: EMU NUZHNO 
SOSTAVITX PROGRAMMU! vYBRATX, KAK IMENNO SLEDUET RASPOLOZHITX I SVYAZATX DANNYE 
V PAMYATI, PONYATX, KAKAYA IMENNO POSLEDOVATELXNOSTX OPERATOROV, --- SPOSOBNYH 
SDELATX VSE CHTO UGODNO I OTTOGO ODNOVREMENNO I PODATLIVYH I 
OPASNYH --- VYPOLNIT POSTAVLENNUYU ZADACHU. i KAK ORGANIZOVATX OPERATORY V 
CIKL, KOTORYJ BUDET S KAZHDYM SHAGOM PRIBLIZHATX MASHINU K NAMECHENNOJ CELI. 
vYBRATX, PONYATX, IZOBRESTI, PROVERITX, USOMNITXSYA I POVTORITX VSE SNACHALA.
   
pOKAZATELXNO, CHTO HOTYA V TAKIH "VNESHNIH" RAZDELAH PROGRAMMIROVANIYA,  KAK 
YAZYKI I TRANSLYATORY, OPERACIONNYE SISTEMY I BAZY DANNYH, SHIROKO RAZVIVAETSYA I 
ISPOLXZUETSYA TEORIYA (OT MATEMATICHESKOJ LINGVISTIKI I LOGIKI DO STATISTIKI I 
TEORII MASSOVOGO OBSLUZHIVANIYA), VO VNUTRENNIH, SOBSTVENNYH RAZDELAH 
PROGRAMMIROVANIYA GOSPODSTVUYUT UMENIE I INTUICIYA ILI V LUCHSHEM SLUCHAE 
"POLEZNYE SOVETY". eSTX, PRAVDA, NEKOTORYE ISSLEDOVANIYA, KASAYUSHCHIESYA UZHE
GOTOVYH PROGRAMM, NO NET NIKAKOJ TEORII SAMOGO PROCESSA PROGRAMMIROVANIYA.
     
pREDLAGAEMAYA KNIGA PpEDSTAVLYAET SOBOJ ODIN IZ PERVYH SHAGOV V |TOM NAPRAVLENII. 
v NEJ S KAZHDYM OPERATOROM, S IH KOMBINACIYAMI I, V TOM CHISLE, S CIKLAMI 
SVYAZYVAYUTSYA PREOBRAZOVANIYA PREDIKATOV, YAVLYAYUSHCHIESYA FORMALXNYM VYRAZHENIEM IH 
SVOJSTV, I OPREDELENIE SVOJSTV PROGRAMMY V CELOM PREVRASHCHAETSYA V ZADACHU 
LOGICHESKOGO VYVODA. oSOBENNO VAZHNO,  CHTO aVTop OB�YASNYAET I DEMONSTRIRUET 
NA PRIMERAH, KAK |TIM FORMALIZMOM MOZHNO POLXZOVATXSYA DLYA PRAKTICHESKOGO
PROGRAMMIROVANIYA. pRI |TOM ON, RAZUMEETSYA, NE DAET OTVETA NA VOPROS O 
TOM, KAK NAPISATX LYUBUYU PROGRAMMU, --- OTVETA NA |TOT VOPROS VOOBSHCHE  NE
SUSHCHESTVUET. oN PREDLAGAET NAM INSTRUMENT, POZVOLYAYUSHCHIJ PROVERYATX NASHI  
GIPOTEZY V PROCESSE PROEKTIROVANIYA PROGRAMM, A INOGDA I PODSKAZYVAYUSHCHIJ
TE ILI INYE VARIANTY RESHENIJ.
     
a |TO SOVSEM NE MALO. pREDSTAVXTE SEBE CHELOVEKA, ZHIVUSHCHEGO V |POHU 
ZAROZHDENIYA MATEMATICHESKOGO ANALIZA, KOTOROMU NUZHNO NAHODITX NEOPREDELENNYE 
INTEGRALY OT VESXMA GROMOZDKIH PODYNTEGRALXNYH VYRAZHENIJ I KOTORYJ ZNAET 
TOLXKO OPREDELENIE PERVOOBRAZNOJ FUNKCII I NE ZNAET NIKAKIH PRIEMOV 
INTEGRIROVANIYA. kAKIM DLYA NEGO BYLO BY PODSPORXEM, ESLI BY EMU
cooBSHCHILI O PRAVILE INTEGRIROVANIYA PO CHASTYAM ILI O TAKOM PRIEME, KAK ZAMENA 
PEREMENNYH! eGO RABOTA NE PERESTANET BYTX TVORCHESKOJ, NO NASKOLXKO RASSHIRYATSYA
EGO VOZMOZHNOSTI I KAK MNOGO PEREJDET IZ OBLASTI NAHODOK  V OBLASTX TEHNIKI. 
tO, CHTO BYLO SLOZHNYM, STANET PROSTYM, TO, CHTO BYLO NEPOSILXNYM, STANET
TOLXKO SLOZHNYM. sISTEMATICHESKOE ISPOLXZOVANIE, OBOBSHCHENIE I RASSHIRENIE |TIH 
PRIEMOV POZVOLIT POSTEPENNO PEREJTI K FORMALIZACII, ALGORITMIZACII, A
ZATEM I K AVTOMATIZACII OTDELXNYH |TAPOV RESHENIYA ILI POLNOGO RESHENIYA 
SPECIALXNYH KLASSOV ZADACH
     
AVTOR KNIGI, e.~dEJKSTRa,   NE NUZHDAETSYA V PREDSTAVLENII,--- EGO RABOTY 
HOROSHO  IZVESTNY SOVETSKIM PROGRAMMISTAM. vMESTE S ch.~hOAROM ONI
NEDAVNO SOVERSHILI POEZDKU PO KRUPNEJSHIM GORODAM NASHEJ STRANY, VO 
VREMYA KOTOROJ VYSTUPILI S LEKCIYAMI PERED MNOGOCHISLENNYMI AUDITORIYAMI.

o STRUKTURE I STILE KNIGI DOSTATOCHNO POLNO SKAZANO V PREDISLOVII AVTORA. 
tAM ZHE ON PREDUPREZHDAET, CHTO CHITATX EGO KNIGU TRUDNO. pRICHINA |TOGO 
ZAKLYUCHAETSYA V SLOZHNOSTI SAMIH PROGRAMM, POSLUZHIVSHIH DLYA NEE MATERIALOM. 
ya HOTEL BY DOBAVITX, CHTO ONI SLOZHNY DLYA NAS TOLXKO SEJCHAS, KOGDA TEORIYA 
PROGRAMMIROVANIYA DELAET SVOI PERVYE SHAGI. pRIDET VREMYA, I TAKIE PROGRAMMY 
SMOZHET SOSTAVLYATX (ILI VYVODITX) PRYAMO NA UROKE KAZHDYJ SHKOLXNIK. 
i CHTOBY |TO VREMYA PRIBLIZITX, NADO OSVAIVATX, VNEDRYATX I RAZVIVATX TEORIYU. 
a |TOT PROCESS LEGKO NE PROHODIT.
     
pEREVOD PREDISLOVIYA I GLAV 1--7 VYPOLNEN v.v.~mARTYNYUKOM, 
GLAV 8--21 --- i.X.~zUSMAN,  GLAV 22--27 --- l.v.~uHOVYM.

\rightline{{\sl e.~3.~lYUBIMSKIJ}}
\eject
\vfill

\chapter{predislovie}
\medskip
iSTORIKI TAKIH DREVNIH INTELLEKTUALXNYH DISCIPLIN, KAK PO|ZIYA, MUZYKA, ZHIVOPISX 
I NAUKA, VYSOKO OCENIVAYUT ROLX VYDAYUSHCHIHSYA PRAKTIKOV, CHXI DOSTIZHENIYA OBOGATILI 
OPYT I RASSHIRILI PREDSTAVLENIYA POKLONNIKOV |TIH DISCIPLIN, PROBUDILI I UKREPILI 
TALANTY POSLEDOVATELEJ. tO NOVOE, CHTO IMI VNESENO, OSNOVYVAETSYA NA SOCHETANII
VIRTUOZNOGO PRAKTICHESKOGO MASTERSTVA I PRONICATELXNOGO OSMYSLIVANIYA 
FUNDAMENTALXNYH PRINCIPOV. vO MNOGIH SLUCHAYAH VLIYANIE |TIH LYUDEJ USILIVALOSX 
BLAGODARYA IH VYSOKOJ KULXTURE, BOGATSTVU I VYRAZITELXNOSTI IH RECHI.
     
v |TOJ KNIGE V PRISUSHCHEM EE AVTORU UTONCHENNOM STILE PREDSTAVLENA PRINCIPIALXNO 
NOVAYA TOCHKA ZRENIYA NA SUSHCHESTVO PROGRAMMIROVANIYA. iSHODYA IZ |TOJ TOCHKI
ZRENIYA, AVTOR RAZRABOTAL SOVOKUPNOSTX NOVYH METODOV PROGRAMMIROVANIYA I 
SREDSTV OBOZNACHENIYA, KOTORYE DEMONSTRIRUYUTSYA I PROVERYAYUTSYA NA MNOGOCHISLENNYH
IZYASHCHNYH I SODERZHATELXNYH PRIMERAH. eTOT TRUD, NESOMNENNO, BUDET PRIZNAN ODNIM 
IZ VYDAYUSHCHIHSYA DOSTIZHENIJ V RAZRABOTKE NOVOJ INTELLEKTUALXNOJ 
DISCIPLINY --- PROGRAMMIROVANNYA DLYA VYCHISLITELXNYH MASHIN.

\rightline{ch.~a.~r.~hOAR}
\vfill
\eject
     
\chapter{ot avtora}
uZHE DAVNO MNE HOTELOSX NAPISATX KNIGU TAKOGO RODA. ya ZNAL, CHTO PROGRAMMY 
MOGUT OCHAROVYVATX GLUBINOJ SVOEGO  LOGICHESKOGO IZYASHCHESTVA, NO MNE
POSTOYANNO PRIHODILOSX  UBEZHDATXSYA, CHTO BOLXSHINSTVO IZ NIH POYAVLYAYUTSYA V 
VIDE, RASSCHITANNOM  NA MEHANICHESKOE ISPOLNENIE, NO SOVERSHENNO NEPRIGODNOM
DLYA CHELOVECHESKOGO VOSPRIYATIYA --- GDE UZH TAM GOVORITX OB IZYASHCHESTVE.  
mENYA NE UDOVLETVORYALO I TO, CHTO ALGORITMY CHASTO PUBLIKUYUTSYA V FORME GOTOVYH
IZDELIJ, POCHTI BEZ UPOMINANIYA TEH RASSMOTRENIJ, KOTORYE PROVODILISX V PROCESSE 
RAZRABOTKI I SLUZHILI OBOSNOVANIEM DLYA OKONCHATELXNOGO VIDA ZAVERSHENNOJ
PROGRAMMY. sNACHALA YA ZADUMAL IZLOZHITX NEKOTOROE KOLICHESTVO IZYASHCHNYH ALGORITMOV 
TAKIM SPOSOBOM, CHTOBY CHITATELX SMOG PROCHUVSTVOVATX IH KRASOTU; DLYA |TOGO
YA SOBIRALSYA KAZHDYJ RAZ OPISYVATX ISTINNYJ ILI VOOBRAZHAEMYJ PROCESS POSTROENIYA, 
KOTORYJ PRIVODIL BY K POLUCHENIYU ISKOMOJ PROGRAMMY. ya NE IZMENIL SVOEMU 
PERVONACHALXNOMU NAMERENIYU V TOM SMYSLE, CHTO OSNOVOJ |TOJ MONOGRAFII OSTAETSYA 
DLINNAYA POSLEDOVATELXNOSTX GLAV, V KAZHDOJ IZ KOTORYH STAVITSYA I RESHAETSYA NOVAYA 
ZADACHA. tEM NE MENEE OKONCHATELXNYJ VARIANT KNIGI SUSHCHESTVENNO OTLICHAETSYA
OT EE PERVONACHALXNOGO ZAMYSLA POSKOLXKU VOZLOZHENNAYA MNOYU NA SEBYA OBYAZANNOSTX 
PRESTAVLYATX RESHENIYA V ESTESTVENNOJ I UBEDITELXNOJ MANERE POVLEKLA ZA SOBOJ 
GORAZDO BOLXSHEE, CHEM YA OZHIDAL, I YA NAVSEGDA SOHRANYU CHUVSTVO BLAGODARNOSTI 
SUDXBE ZA TO, CHTO VZYALSYA ZA |TU RABOTU.
     
kOGDA NACHINAESHX PISATX PODOBNUYU KNIGU, SRAZU VOZNIKAET PROBLEMA: KAKIM 
YAZYKOM PROGRAMMIROVANIYA POLXZOVATXSYA? i |TO NE TOLXKO VOPROS PREDSTAVLENIYA!
nAIBOLEE VAZHNYM, NO V TO ZHE VREMYA I NAIBOLEE NEZAMETNYM SVOJSTVOM LYUBOGO 
INSTRUMENTA YAVLYAETSYA EGO VLIYANIE NA FORMIROVANIE PRIVYCHEK LYUDEJ, KOTORYE 
IMEYUT OBYKNOVENIE IM POLXZOVATXSYA. kOGDA |TOT INSTRUMENT --- YAZYK 
PROGRAMMIROVANIYA, EGO VLIYANIE, NEZAVISIMO OT NASHEGO ZHELANIYA, SKAZYVAETSYA
NA NASHEM SPOSOBE  MYSHLENIYA. pROANALIZIROVAV V SVETE |TOGO VLIYANIYA VSE 
IZVESTNYE MNE YAZYKI PROGRAMMIROVANIYA, YA PRISHEL K VYVODU, CHTO NI ONI
SAMI, NI IH PODMNOZHESTVA NE PODHODYAT DLYA MOIH CELEJ. s DRUGOJ STORONY, 
YA SCHITAL SEBYA NASTOLXKO NE PODGOTOVLENNYM K SOZDANIYU NOVOGO YAZYKA
PROGRAMMIROVANIYA, CHTO DAL ZAROK NE ZANIMATXSYA |TIM V BLIZHAJSHEE PYATILETIE, 
I YA TVERDO ZNAYU, CHTO |TOT SROK ESHCHE NE VYSHEL. (pREZHDE, POMIMO VSEGO PROCHEGO,
MNE NUZHNO BYLO NAPISATX |TU MONOGRAFIYU.) ya POPYTALSYA VYBRATXSYA IZ |TOGO 
TUPIKA, SOZDAV LISHX PODHODYASHCHIJ DLYA MOIH CELEJ MINI-YAZYK I VKLYUCHIV V
NEGO TOLXKO TE |LEMENTY, KOTORYE PREDSTAVLYAYUTSYA SOVERSHENNO NEOBHODIMYMI 
I DOSTATOCHNO OBOSNOVANNYMI.
     
eTI MOI KOLEBANIYA I SAMOOGRANICHENIE, ESLI IH NEPRAVILXNO PONYATX, MOGUT 
RAZOCHAROVATX MNOGIH POTENCIALXNXNYH CHITATELEJ. nAVERNYAKA RAZOCHARUYUTSYA
VSE TE, KTO OTOZHDESTVLYAET TRUDNOSTX PROGRAMMIROVANIYA S TRUDNOSTXYU 
IZOSHCHRENNOGO ISPOLXZOVANIYA GROMOZDKIH I PRICHUDLIVYH SOORUZHENIJ,
IZVESTNYH POD NAZVANIEM "YAZYKI PROGRAMMIROVANIYA VYSOKOGO UROVNYA" 
ILI --- ESHCHE HUZHE! --- "SISTEMY PROGRAMMIROVANIYA". eSLI ONI SOCHTUT SEBYA 
OBMANUTYMI IZ-ZA TOGO, CHTO YA VOVSE NE KASAYUSX VSEH |TIH POGREMUSHEK I 
SVISTULEK, MOGU OTVETITX IM TOLXKO ODNO: "a VPOLNE LI VY UVERENY, CHTO VSE |TI
POGREMUSHKI I SVISTULXKI,  VSE |TI POTRYASAYUSHCHIE VOZMOZHNOSTI VASHIH, TAK SKAZATX, 
"MOSHCHNYH" YAZYKOV PROGRAMMIROVANIYA IMEYUT OTNOSHENIE K PROCESSU RESHENIYA, A NE K 
SAMIM ZADACHAM?" mNE OSTAETSYA LISHX NADEYATXSYA, CHTO, NESMOTRYA NA UPOTREBLENIE 
MNOYU MINI-YAZYKA, ONI VSE ZHE PROCHTUT PREDLAGAEMYJ TEKST. tOGDA ONI, VOZMOZHNO 
PRIZNAYUT, CHTO POMIMO POGREMUSHEK I SVISTULEK IMEETSYA OCHENX BOGATOE SODERZHANIE 
I VOZNIKNET VOPROS, STOILO LI BOLXSHINSTVO IZ NIH VOOBSHCHE PRIDUMYVATX. a VSEM 
CHITATELYAM, INTERESUYUSHCHIMSYA PREIMUSHCHESTVENNO RAZRABOTKOJ YAZYKOV PROGRAMMIROVANIYA, 
YA MOGU TOLXKO PRINESTI IZVINENIYA V SVYAZI S TEM, CHTO ESHCHE NE MOGU VYSKAZATXSYA NA 
|TU TEMU BOLEE OPREDELENNO. tEM VREMENEM |TA MONOGRAFIYA, VOZMOZHNO, NAVEDET IH 
NA NEKOTORYE RAZMYSHLENIYA I POMOZHET IM IZBEZHATX OSHIBOK, KOTORYE ONI MOGLI BY 
SOVERSHITX, ESLI BY NE PROCHLI EE.

\bigskip
pROCESS RABOTY NAD KNIGOJ, KOTORYJ YAVILSYA DLYA  MENYA NEPRERYVNYM ISTOCHNIKOM 
UDIVLENIYA I VDOHNOVENIYA, PRIVEL K POYAVLENIYU TEKSTA, OSNOVATELXNO OTLICHAYUSHCHEGOSYA 
OT PERVONACHALXNOGO ZAMYSLA. sNACHALA U MENYA BYLO VPOLNE PONYATNOE NAMERENIE 
PREDSTAVITX POSTROENIE PROGRAMM S POMOSHCHXYU  APPARATA, CHUTX BOLEE FORMALXNOGO 
CHEM TOT, KOTORYJ YA IMEL  OBYKNOVENIE ISPOLXZOVATX V SVOIH VVODNYH LEKCIYAH, 
GDE SEMANTIKA OBYCHNO VVODILASX INTUITIVNO, A DOKAZATELXSTVA PRAVILXNOSTI 
PREDSTAVLYALI SOBOJ SMESX STROGIH RASSUZHDENIJ, ZHESTIKULYACII I KRASNORECHIYA.
rAZRABATYVAYA NEOBHODIMYE OSNOVY DLYA  BOLEE FORMALXNOGO PODHODA, YA OBNARUZHIL 
DVA NEOZHIDANNYH OBSTOYATELXSTVA.
     
pERVAYA NEOZHIDANNOSTX SOSTOYALA V TOM, CHTO TAK NAZYVAEMYE "PREOBRAZOVATELI 
PREDIKATOV", VYBRANNYE MNOYU V KACHESTVE SREDSTVA IZ�YASNENIYA, POZVOLILI PRYAMO
OPREDELYATX SVYAZX MEZHDU NACHALXNYM I KONECHNYM SOSTOYANIYAMI BEZ KAKIH-LIBO 
SSYLOK NA PROMEZHUTOCHNYE SOSTOYANIYA, KOTORYE MOGUT VOZNIKATX VO VREMYA
VYPOLNENIYA PROGRAMMY.  ya OBRADOVALSYA TOMU, CHTO |TO DAET VOZMOZHNOSTX PROVESTI 
CHETKOE RAZGRANICHENIE DVUH OSNOVNYH PROBLEMATIK PROGRAMMIROVANIYA:
PROBLEMATIKI  MATEMATICHESKOJ KORREKTNOSTI (RECHX IDET O PROVERKE, OPREDELYAET 
LI PROGRAMMA PRAVILXNOE  SOOTNOSHENIE MEZHDU NACHALXNYM I KONECHNYM
SOSTOYANIYAMI --- I PREOBRAZOVATELI PREDIKATOV OBESPECHIVAYUT NAM FORMALXNOE 
SREDSTVO DLYA TAKOGO ISSLEDOVANIYA BEZ RASSMOTRENIYA VYCHISLITELXNOGO PROCESSA) 
I INZHENERNOJ PROBLEMATIKI |FFEKTIVNOSTI (BLAGODARYA RAZGRANICHENIYU STANOVITSYA 
OCHEVIDNYM, CHTO POSLEDNYAYA PROBLEMATIKA OPREDELENA TOLXKO V SVYAZI S REALIZACIEJ).
pOZHALUJ, SAMOE POLEZNOE OTKRYTIE SOSTOIT V TOM, CHTO ODIN I TOT ZHE TEKST 
PROGRAMMY DOPUSKAET DVE (V IZVESTNOM SMYSLE DOPOLNYAYUSHCHIE DRUG DRUGA) 
INTERPRETACII. iNTERPRETACIYA V  VIDE KODA PREOBRAZOVATELEJ PREDIKATOV, KOTORAYA 
PREDSTAVLYAETSYA BOLEE PODHODYASHCHEJ DLYA NAS,  PROTIVOSTOIT INTERPRETACII V
VIDE KODA DLYA  VYPOLNENIYA --- EE YA PREDPOCHITAYU OSTAVLYATX MASHINAM!

vTOROJ NEOZHIDANNOSTXYU OKAZALOSX TO, CHTO SAMYE ESTESTVENNYE I 
SISTEMATIZIROVANNYE "KODY PREOBRAZOVATELEJ PREDIKATOV", KAKIE YA MOG SEBE
PREDSTAVITX, POTREBOVALI BY  NEDETERMINIROVANNOJ REALIZACII, ESLI RASSMATRIVATX 
IH KAK "KODY DLYA VYPOLNENIYA". vNACHALE YA SODROGALSYA OT MYSLI, CHTO PRIDETSYA 
VVESTI NEDETERMINIROVANNOSTX UZHE V ODNOPROGRAMNOM REZHIME (SLISHKOM HOROSHO MNE 
BYLI IZVESTNY SLOZHNOSTI, VOZNIKAYUSHCHIE IZ-ZA |TOGO V MULXTIPROGRAMMIROVANII); 
ODNAKO POTOM YA PONYAL, CHTO INTERPRETACIYA TEKSTA KAK KODA PREOBRAZOVATELYA
PREDIKATOV IMEET PRAVO NA NEZAVISIMOE SUSHCHESTVOVANIE. (oGLYADYVAYASX NAZAD, 
MY MOZHEM OTMETITX, CHTO MNOGIE PROBLEMY MULXTIPROGRAMMIROVANIYA, STAVIVSHIE NAS 
PREZHDE V TUPIK, YAVLYAYUTSYA VSEGO LISHX SLEDSTVIEM APRIORNOJ TENDENCII PRIDAVATX 
DETERMINIROVANNOSTI SLISHKOM BOLXSHOE ZNACHENIE.)  v KONCE KONCOV YA PRISHEL K
TOMU, CHTO STAL SCHITATX NEDETERMINIROVANNOSTX ESTESTVENNOJ SITUACIEJ, PRI |TOM
DETERMINIROVANNOSTX SVELASX K DOVOLXNO BANALXNOMU CHASTNOMU SLUCHAYU.

uSTANOVIV |TI OSNOVY, YA PRISTUPIL, KAK I NAMEREVALSYA, K RESHENIYU DLINNOJ 
POSLEDOVATELXNOSTI ZADACH. eTO ZANYATIE OKAZALOSX NEOZHIDANNO UVLEKATELXNYM. ya
UBEDILSYA V TOM, CHTO FORMALXNYJ APPARAT POZVOLYAET MNE UHVATYVATX SUSHCHESTVO 
DELA GORAZDO CHETCHE, CHEM RANXSHE. ya POLUCHIL UDOVOLXSTVIE, OBNARUZHIV, CHTO
YAVNAYA POSTANOVKA VOPROSA O ZAVERSHIMOSTI MOZHET IMETX BOLXSHOE |VRISTICHESKOE 
ZNACHENIE; TUT YA DAZHE NACHAL SOZHALETX  OB IZLISHNE RASPROSTRANENNOJ SKLONNOSTI 
K CHASTICHNOJ KORREKTNOSTI. nO SAMOE PRIYATNOE SOSTOYALO V TOM, CHTO BOLXSHINSTVO 
RESHENNYH MNOYU RANEE ZADACH TEPERX UVENCHALOSX BOLEE IZYASHCHNYMI RESHENIYAMI. 
ya VOSPRINYAL |TO KAK VESXMA OBODRYAYUSHCHEE SVIDETELXSTVO TOGO, CHTO RAZRABOTANNAYA 
METODIKA I V SAMOM DELE ULUCHSHILA MOI PROGRAMMISTSKIE VOZMOZHNOSTI.

\bigskip
kAK SLEDUET IZUCHATX |TU MONOGRAFIYU? lUCHSHEE, CHTO YA MOGU POSOVETOVATX: 
PRERYVAJTE CHTENIE, KAK TOLXKO USVOITE POSTANOVKU ZADACHI, I PYTAJTESX SNACHALA
RESHITX EE SAMOSTOYATELXNO, ZATEM PRODOLZHAJTE CHTENIE. pOPYTKA SAMOSTOYATELXNOGO 
RESHENIYA ZADACHI PREDSTAVLYAETSYA EDINSTVENNYM SPOSOBOM PROCHUVSTVOVATX, NASKOLXKO 
ONA TRUDNA; KROME TOGO, VY MOZHETE SRAVNIVATX MOE RESHENIE S VASHIM I POLUCHITX 
UDOVLETVORENIE, ESLI VASHE OKAZHETSYA LUCHSHE. pREDUPREZHDAYU ZARANEE: NE OGORCHAJTESX, 
KOGDA UVIDITE, CHTO |TOT TEKST CHITAETSYA OTNYUDX NE LEGKO. tE, KTO IZUCHALI EGO 
V RUKOPISI, CHASTO ISPYTYVALI ZATRUDNENIYA (NO VPOLNE VOZNAGRAZHDALISX ZA |TO).
vPROCHEM, KAZHDYJ PRI ANALIZE IH ZATRUDNENIJ MY SOVMESTNO UBEZHDALISX V TOM, 
CHTO "VINOVNYM" OKAZYVALSYA VOVSE NE TEKST (T. E. SPOSOB IZLOZHENIYA), A SAM 
IZLAGAEMYJ MATERIAL. mORALX |TOGO MOZHET BYTX TOLXKO TAKOVA: NETRIVIALXNYJ
ALGORITM I VPRAVDU NETRIVIALEN, A EGO OKONCHATELXNAYA ZAPISX NA YAZYKE 
PROGRAMMIROVANIYA SLISHKOM LAKONICHNA PO SRAVNENIYU S RASSUZHDENIYAMI,
OBOSNOVYVAYUSHCHIMI EGO RAZRABOTKU; |TA KRATKOSTX OKONCHATELXNOGO TEKSTA NE 
DOLZHNA NAS DEZORIENTIROVATX. oDIN IZ MOIH  SOTRUDNIKOV VNES PREDLOZHENIE 
(A YA DOVOZHU EGO DO VASHEGO SVEDENIYA, POSKOLXKU ONO MOZHET OKAZATXSYA POLEZNYM), 
CHTOBY NEBOLXSHIE GRUPPY STUDENTOV IZUCHALI KNIGU VMESTE. (zDESX YA DOLZHEN DOBAVITX 
V SKOBKAH ZAMECHANIE PO POVODU "TRUDNOSTI" |TOGO TEKSTA. pOSVYATIV NEMALO LET 
SVOEJ NAUCHNOJ ZHIZNI TOMU CHTOBY PROYASNITX ZADACHI PROGRAMMISTA I SDELATX IH 
BOLEE PODVLASTNYMI NASHEMU INTELLEKTU, YA OBNARUZHIL S UDIVLENIEM (I RAZDRAZHENIEM), 
CHTO MOE STREMLENIE VNESTI YASNOSTX PRIVODIT K SISTEMATICHESKIM OBVINENIYAM V TOM, 
CHTO YA "VNES V PROGRAMMIROVANIE TRUDNOSTI". nO |TI TRUDNOSTI VSEGDA V NEM BYLI; 
I TOLXKO SDELAV IH VIDIMYMI, MY SMOZHEM NADEYATXSYA, CHTO NAUCHIMSYA RAZRABATYVATX 
PROGRAMMY S VYSOKOJ STEPENXYU NADEZHNOSTI, A NE PROSTO "LEPITX KOMANDY", 
T.~E. VYDAVATX TEKSTY, OSNOVANNYE NA NEUBEDITELXNYH PREDPOLOZHENIYAH, 
SOSTOYATELXNOSTX KOTORYH MOZHET VYYAVITXSYA POSLE PERVOGO ZHE PROTIVORECHASHCHEGO 
PRIMERA. nEZACHEM I GOVORITX, CHTO NI ODNA PROGRAMMA IZ |TOJ MONOGRAFII NE
PROVERYALASX NA MASHINE.)

ya DOLZHEN OB�YASNITX CHITATELYU, POCHEMU YA POLXZUYUSX MINI-YAZYKOM, STOLX 
OGRANICHENNYM, CHTO V NEM NET DAZHE PROCEDUR I REKURSII. pOSKOLXKU KAZHDOE
SLEDUYUSHCHEE RASSHIRENIE YAZYKA DOBAVLYALO BY K |TOJ KNIGE ESHCHE NESKOLXKO GLAV, 
TEM SAMYM SOOTVETSTVENNO UVELICHIVAYA EE STOIMOSTX, OTSUTSTVIE BOLXSHINSTVA
VOZMOZHNYH RASSHIRENIJ (TAKIH, KAK, NAPRIMER, MULXTIPROGRAMMIROVANIE) NE 
NUZHDAETSYA V DOPOLNITELXNYH OPRAVDANIYAH.  oDNAKO  PROCEDURY VSEGDA ZANIMALI 
TAKOE VAZHNOE MESTO, A REKURSIYA DLYA VYCHISLITELXNOJ NAUKI V TAKOJ STEPENI 
SCHITALASX PRIZNAKOM  AKADEMICHESKOJ RESPEKTABELXNOSTI, CHTO NEKOTOROE 
RAZ�YASNENIE PREDSTAVLYAETSYA NEOBHODIMYM.

pREZHDE VSEGO |TA KNIGA PREDNAZNACHENA NE DLYA NACHINAYUSHCHIH, I YA RASSCHITYVAYU, CHTO 
MOI CHITATELI UZHE ZNAKOMY S UKAZANNYMI PONYATIYAMI. vO-VTORYH, KNIGA NE YAVLYAETSYA
VVODNYM TEKSTOM PO KAKOMU-TO KONKRETNOMU YAZYKU PROGRAMMIROVANIYA, TAK CHTO 
OTSUTSTVIE V NEJ |TIH KONSTRUKCIJ I PRIMEROV IH UPOTREBLENIYA NE SLEDUET
OB�YASNYATX MOEJ NESPOSOBNOSTXYU ILI NEZHELANIEM IMI POLXZOVATXSYA ILI ZHE 
VOSPRINIMATX KAK NAMEK NA TO, CHTO VOOBSHCHE LUCHSHE VOZDERZHIVATXSYA OT IH PRIMENENIYA.
pROSTO ONI NE POTREBOVALISX MNE DLYA RAZ�YASNENIYA MOEJ GLAVNOJ MYSLI O TOM, 
NASKOLXKO SUSHCHESTVENNO TSHCHATELXNOE RAZGRANICHENIE PROBLEMATIK DLYA RAZRABOTKI 
VSESTORONNE VYSOKOKACHESTVENNYH PROGRAMM; SKROMNYE SREDSTVA MINI-YAZYKA
PREDOSTAVLYAYUT NAM BOLEE CHEM DOSTATOCHNYJ PROSTOR DLYA NETRIVIALXNYH I V TO 
ZHE VREMYA VPOLNE PRIEMLEMYH RAZRABOTOK.

mOZHNO OBOJTISX |TIM OB�YASNENIEM, NO ONO VSE ZHE NE YAVLYAETSYA ISCHERPYVAYUSHCHIM. 
ya VSE RAVNO SCHITAL SEBYA OBYAZANNYM VVESTI POVTORENIE KAK SAMOSTOYATELXNUYU
KONSTRUKCIYU, POSKOLXKU MNE PREDSTAVLYALOSX, CHTO |TO SLEDOVALO SDELATX UZHE 
DAVNO. kOGDA YAZYKI PROGRAMMIROVANIYA ZAROZHDALISX, "DINAMICHESKAYA" PRIRODA 
OPERATORA PRISVAIVANIYA KAZALASX NE OCHENX PRISPOSOBLENNOJ K "STATICHESKOJ" 
PRIRODE TRADICIONNOJ MATEMATIKI.  iZ-ZA OTSUTSTVIYA SOOTVETSTVUYUSHCHEJ TEORII 
MATEMATIKI OSHCHUSHCHALI NEKOTORYE ZATRUDNENIYA, SVYAZANNYE S |TIM OPERATOROM, 
A POSKOLXKU IMENNO KONSTRUKCIYA POVTORENIYA SOZDAET NEOBHODIMOSTX V 
PRISVAIVANIYAH PEREMENNYM, MATEMATIKI OSHCHUSHCHALI ZATRUDNENIYA I V SVYAZI S 
POVTORENIEM. kOGDA BYLI RAZRABOTANY YAZYKI BEZ PRISVAIVANIYA I BEZ 
POVTORENIJ --- TAKIE, KAK CHISTYJ lisp,--- MNOGIE POCHUVSTVOVALI ZNACHITELXNOE
OBLEGCHENIE. oNI SNOVA OSHCHUTILI POD NOGAMI ZNAKOMUYU POCHVU I UVIDELI PROBLESK 
NADEZHDY PREVRATITX PROGRAMMIROVANIE V ZANYATIE S TVERDOJ I SOLIDNOJ
MATEMATICHESKOJ OSNOVOJ. (dO SEGO VREMENI SREDI SKLONNYH K TEORETIZIROVANIYU 
SPECIALISTOV PO MASHINNOJ MATEMATIKE VSE ESHCHE SHIROKO RASPROSTRANENO MNENIE, 
CHTO REKURSIVNYE PROGRAMMY "BOLEE ESTESTVENNY", CHEM PROGRAMMY S POVTORENIYAMI.)

dRUGOGO VYHODA IZ POLOZHENIYA PUTEM NADEZHNOGO I DEJSTVENNOGO MATEMATCHESKOGO 
OBOSNOVANIYA PARY PONYATIJ "POVTORENIE" I  "PRISVAIVANIE PEREMENNOJ"
NAM PREDSTOYALO ZHDATX ESHCHE DESYATX LET. a VYHOD, KAK POKAZANO V |TOJ MONOGRAFII, 
ZAKLYUCHALSYA V TOM, CHTO SEMANTIKU KONSTRUKCII POVTORENIYA MOZHNO OPISATX S
POMOSHCHXYU REKURRENTNYH OTNOSHENIJ MEZHDU PREDIKATAMI, TOGDA KAK DLYA OPISANIYA 
SEMANTIKI OBSHCHEJ REKURSII TREBUYUTSYA REKURRENTNYE OTNOSHENIYA MEZHDU
PREOBRAZOVATELYAMI PREDIKATOV. oTSYUDA SOVERSHENNO OCHEVIDNO, POCHEMU  YA SCHITAYU 
OBSHCHUYU REKURSIYU NA PORYADOK BOLEE SLOZHNOJ KONSTRUKCIEJ, CHEM PROSTOE
POVTORENIE; I PO|TOMU MNE BOLXNO SMOTRETX, KAK SEMANTIKU KONSTRUKCII 
POVTORENIYA
$$
"\kwd{while } B \kwd{ do } S"
$$
OPREDELYAYUT  KAK SEMANTIKU OBRASHCHENIYA
$$
"whiledo(B,S)"
$$
K REKURSIVNOJ PROCEDURE (OPISANNOJ V SINTAKSISE YAZYKA algol 60):
{\obeylines
\kwd{procedure} \var{whiledo}(\var{USLOVIE}, \var{OPERATOR});
 \kwd{begin} \kwd{if} \var{USLOVIE} \kwd{then} \kwd{begin} \var{OPERATOR};
       whiledo(\var{USLOVIE},\var{OPERATOR}) \kwd{end}
\kwd{end}

}
nESMOTRYA NA FORMALXNUYU PRAVILXNOSTX, |TO MNE NEPRIYATNO, POTOMU, CHTO YA NE 
LYUBLYU, KOGDA IZ PUSHKI STRELYAYUT PO VOROBXYAM, VNE ZAVISIMOSTI OT TOGO, NASKOLXKO
|FFEKTIVNO PUSHKA SPRAVLYAETSYA S TAKOJ RABOTOJ. dLYA POKOLENIYA TEORETIKOV 
MASHINNOJ MATEMATIKI, KOTORYE PODKLYUCHALISX K |TOJ TEMATIKE V TECHENIE
SHESTIDESYATYH GODOV, PRIVEDENNOE VYSHE REKURSIVNOE OPREDELENIE CHASTO YAVLYAETSYA 
NE TOLXKO "ESTESTVENNYM",  NO DAZHE "SAMYM PRAVILXNYM". oDNAKO VVIDU TOGO, CHTO 
BEZ PONYATIYA POVTORENIYA MY NE MOZHEM DAZHE OPISATX POVEDENIE  MASHINY tXYURINGA,
PREDSTAVLYAETSYA NEOBHODIMYM PROIZVESTI NEKOTOROE VOSSTANOVLENIE RAVNOVESIYA.

pO POVODU OTSUTSTVIYA BIBLIOGRAFII YA NE PREDLAGAYU NI OB�YASNENIJ, NI IZVINENIJ.


{\sl bLAGODARNOSTI.} sLEDUYUSHCHIE LICA OKAZALI NEPOSREDSTVENNOE VLIYANIE NA 
RAZRABOTKU |TOJ KNIGI, LIBO PRINYAV UCHASTIE V OBSUZHDENII EE PREDPOLAGAEMOGO 
SODERZHANIYA, LIBO VYSKAZAV ZAMECHANNYA OTNOSITELXNO GOTOVOJ RUKOPISI ILI EE
CHASTEJ: k.~bRON, r.~bERSTALL, u.~fEJEN, ch.~hOAR, d.~kNUT, m.~rEM, 
dZH.~rEJNOLXDS, d.~rOSS, k.~shOLTEN, g.~zIGMYULLER, n.~vIRT I m.~vUDZHER. 
ya SCHITAYU CHESTXYU DLYA SEBYA VOZMOZHNOSTX PUBLICHNO VYRAZITX IM MOYU PRIZNATELXNOSTX 
ZA SOTRUDNICHESTVO. kROME TOGO, YA VESXMA OBYAZAN KORPORACII Burroughs,
SOZDAVSHEJ MNE BLAGOPRIYATNYE USLOVIYA I PREDOSTAVIVSHEJ  NEOBHODIMYE SREDSTVA, 
I BLAGODAREN MOEJ ZHENE ZA NEIZMENNUYU PODDERZHKU I ODOBRENIE.

\rightline{e. v. dEJKSTRA}
\leftline{nEJEN }
\leftline{nIDERLANDY}
\bye
