Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lisp / Filp / LISP16

.TXT
Скачиваний:
19
Добавлен:
15.06.2014
Размер:
22.43 Кб
Скачать
”г­ЄжЁп CLEAR ЁбЇ®«м§гҐвбп ¤«п § ЇаҐйҐ­Ёп ва ббЁа®ўЄЁ Ё
ЇаҐалў ­Ёп дг­ЄжЁЁ. Ќ ЇаЁ¬Ґа, Є®¬ ­¤ 

(CLEAR 'APP 'REV)

§ ЇаҐй Ґв ва ббЁа®ўЄг APP Ё REV.
…б«Ё ва ббЁа㥬 п дг­ЄжЁп ЇаҐаў ­ , в® ¤«п бзҐвзЁЄ  га®ў­п
дг­ЄжЁ®­ «м­ле ўл§®ў®ў, LEVELCOUNT, ­Ґ Ўг¤Ґв ў®ббв ­®ў«Ґ­® ҐЈ®
­г«Ґў®Ґ §­ зҐ­ЁҐ. ‚ н⮬ б«гз Ґ Є®¬ ­¤®©

(CLEAR)

ў®ббв ­ ў«Ёў Ґвбп ­г«Ґў®Ґ §­ зҐ­ЁҐ LEVELCOUNT Ё ўлЇ®«­повбп
¤агЈЁҐ бўп§ ­­лҐ б нвЁ¬ дг­ЄжЁЁ.



6.2. ‘।бвў  ЇаҐалў ­Ёп


Џ®б«Ґ ўл§®ў  дг­ЄжЁЁ ЇаҐалў ­Ёп ўлзЁб«Ґ­ЁҐ
ЇаЁ®бв ­ ў«Ёў Ґвбп, Ё ўл§лў Ґвбп дг­ЄжЁп muLISP BREAK. ќв®
Ї®§ў®«пҐв Їа®ўҐаЁвм ᮤҐа¦Ё¬®Ґ баҐ¤л ў в®зЄҐ ЇаҐалў ­Ёп (в.Ґ.
§­ зҐ­Ёп ЇҐаҐ¬Ґ­­ле), ўл¤ вм ­  нЄа ­ ®Ўа в­го ва ббг - б奨г
ў«®¦Ґ­­®бвЁ ўл§®ў®ў дг­ЄжЁ©,   в Є¦Ґ ®бгйҐбвў«пвм «оЎлҐ Ё§¬Ґ­Ґ­Ёп
ў б।Ґ. ‚л ¬®¦ҐвҐ "§ бв ўЁвм" дг­ЄжЁо ЇаҐалў ­Ёп ®бгйҐбвў«пвм
ЇаҐалў ­Ёп в®«мЄ® ­  ®ЇаҐ¤Ґ«Ґ­­ле га®ў­пе ў«®¦Ґ­­®бвЁ, Ё«Ё в®«мЄ®
Ї®б«Ґ ®ЇаҐ¤Ґ«Ґ­­®Ј® Є®«ЁзҐбвў  ўл§®ў®ў дг­ЄжЁЁ, Ё в.¤.

”г­ЄжЁп BRK ЁбЇ®«м§гҐвбп ¤«п ЇаҐалў ­Ёп дг­ЄжЁ©. Ћ­ 
ўл§лў Ґвбп б ®¤­®© Ё«Ё Ў®«ҐҐ дг­ЄжЁп¬Ё ў Є зҐб⢥  аЈг¬Ґ­в®ў.
Ќ ЇаЁ¬Ґа, Є®¬ ­¤ 

(BRK 'REV 'APP)

ЇаҐалў Ґв а Ў®вг дг­ЄжЁ© APP Ё REV. Џ®б«Ґ Є®¬ ­¤л

(REV '(A B C)) ,

Ўг¤Ґв ўлЇ®«­пвмбп ЇаҐалў ­ЁҐ, Ё ўл¤ Ґвбп б«Ґ¤го饥 б®®ЎйҐ­ЁҐ:

Break-point: REV [LST: (A B C)]
Continue, Break, Abort, Top-level, Restart, System ?

…б«Ё ўл е®вЁвҐ Їа®ўҐаЁвм ⥪гйго б।г muLISP, ўлЎҐаЁвҐ ®ЇжЁо "‚"
(б¬. а §¤Ґ« "Џ ЄҐв ЇаҐалў ­Ё©" ў Ј« ўҐ 4). Њ®¦­® в Є¦Ґ
ЁбЇ®«м§®ў вм дг­ЄжЁо HISTOPY (б¬. ЇаҐ¤л¤гйЁ© а §¤Ґ«).…б«Ё ўл
е®вЁвҐ Ї®б¬®ваҐвм б⥪ ўл§®ў®ў дг­ЄжЁ© ў в®зЄҐ ЇаҐалў ­Ёп,
ЁбЇ®«м§г©вҐ Є®¬ ­¤г:

(BACKTRACE)

Љ®¬ ­¤  BACKTRACE ўл¤ Ґв ­  ¤ЁбЇ«Ґ© Ё¬Ґ­  ўбҐе дг­ЄжЁ©,
ўлзЁб«пҐ¬ле ў ¤ ­­л© ¬®¬Ґ­в, ў¬ҐбвҐ б Ёе  аЈг¬Ґ­в ¬Ё, ­ зЁ­ п б
ўл§®ў  ўҐае­ҐЈ® га®ў­п. ‚ ®Ўа в­го ва ббг Ўг¤гв ўЄ«о祭л в®«мЄ®
⥠дг­ЄжЁЁ, ¤«п Є®в®але Їа®ў®¤Ё« бм ва ббЁа®ўЄ  Ё«Ё Є®в®алҐ Ўл«Ё
гЄ § ­л ЇаЁ ЇаҐалў ­ЁЁ.
„«п ўл室  Ё§ ЇаҐалў ­Ёп ўўҐ¤ЁвҐ Є®¬ ­¤г:

(RETURN)

‚лзЁб«Ґ­ЁҐ ЇаҐаў ­­®© дг­ЄжЁЁ ў®§®Ў­®ўЁвбп. …б«Ё ўл ­Ґ
е®вЁвҐ, зв®Ўл дг­ЄжЁп ўлзЁб«п« бм ¤ «миҐ, в® ў¬Ґбв® NIL ў
ЇаҐ¤л¤г饩 Є®¬ ­¤Ґ ўўҐ¤ЁвҐ Ё¬п ўлзЁб«пҐ¬®Ј® ўла ¦Ґ­Ёп. …б«Ё ¦Ґ ўл
е®вЁвҐ ЇаҐаў вм ўлзЁб«Ґ­ЁҐ Ї®«­®бвмо Ё ў®§ўа вЁвм гЇа ў«Ґ­ЁҐ
¤а ©ўҐаг muLISP ўлиҐбв®п饣® га®ў­п, ўўҐ¤ЁвҐ Є®¬ ­¤г:

(RETURN (THROW))

Љ®¬ ­¤  CLEAR, ®ЇЁб ­­ п ўлиҐ, § ЇаҐй Ґв ЇаҐалў ­ЁҐ дг­ЄжЁ©
Ё ў®ббв ­ ў«Ёў Ґв Ёе ЇҐаў®­ з «м­лҐ §®ЇаҐ¤Ґ«Ґ­Ёп.
Џ®«м§®ў вҐ«м ¬®¦Ґв б ¬ ўлЎа вм ¬®¬Ґ­в, Є®Ј¤  ЇаҐалў Ґ¬ п
дг­ЄжЁп Ўг¤Ґв ¤Ґ©б⢨⥫쭮 ЇаҐаў ­ . Љ®¬ ­¤ 

(SETQ BRK NIL)

§ ЇаҐй Ґв ўбҐ ЇаҐалў ­Ёп ¤® вҐе Ї®а, Ї®Є  BRK ў®§ўа й Ґв
§­ зҐ­Ёп, ®в«Ёз­лҐ ®в NIL. Љ®¬ ­¤ 

(REMFLAG 'BRK 'name) ,

Ј¤Ґ <Ё¬п> - нв® Ё¬п ЇаҐалў Ґ¬®© дг­ЄжЁЁ, § ЇаҐй Ґв ЇаҐалў ­ЁҐ
¤ ­­®© дг­ЄжЁЁ ¤® вҐе Ї®а, Ї®Є  ў®§ўа й Ґвбп Є®¬ ­¤ 

(FLAG 'BRK 'name).

ЏаҐалў ­ЁҐ ўбҐе дг­ЄжЁ© ¬®¦Ґв Ўлвм § ¤Ґа¦ ­® ­  ®б­®ўҐ
Є®«ЁзҐбвў  ўл§®ў®ў ЇаҐалў Ґ¬ле дг­ЄжЁ©. …б«Ё §­ зҐ­ЁҐ Є®­ва®«м­®©
ЇҐаҐ¬Ґ­­®© MINCALL - Ї®«®¦ЁвҐ«м­®Ґ 楫®Ґ зЁб«®, ўбҐ ЇаҐалў ­Ёп
§ ¤Ґа¦Ёў овбп ¤® вҐе Ї®а, Ї®Є  Є®«ЁзҐбвў® ўл§®ў®ў дг­ЄжЁЁ Ўг¤Ґв
Ў®«миҐ Ё«Ё а ў­® н⮬㠧­ зҐ­Ёо.
’®з­® в Є ¦Ґ ¬®¦Ґв Ўлвм § ¤Ґа¦ ­® ЇаҐалў ­ЁҐ Є Є®©-¤ЁЎ®
Є®­ЄаҐв­®© дг­ЄжЁЁ ­  ®б­®ўҐ Є®«ЁзҐбвў  ўл§®ў®ў ¤ ­­®© дг­ЄжЁЁ.
Љ®¬ ­¤ 

(PUT 'MINCALL 'name n) ,

Ј¤Ґ <Ё¬п> - нв® Ё¬п ЇаҐалў Ґ¬®© дг­ЄжЁЁ,   <n> - Ї®«®¦ЁвҐ«м­®Ґ
楫®Ґ зЁб«®, § ¤Ґа¦Ёў Ґв ЇаҐалў ­ЁҐ ¤ ­­®© дг­ЄжЁЁ ¤® вҐе Ї®а,
Ї®Є  ®­  ­Ґ Ўг¤Ґв ўл§ў ­  <n> а §.
ЏаҐалў ­ЁҐ дг­ЄжЁ© ¬®¦Ґв Ўлвм § ¤Ґа¦ ­® ­  ®б­®ўҐ га®ў­п
ў«®¦Ґ­­®бвЁ ўл§®ў  дг­ЄжЁЁ. …б«Ё §­ зҐ­ЁҐ Є®­вத쭮© ЇҐаҐ¬Ґ­­®©
BRKLEVEL - Ї®«®¦ЁвҐ«м­®Ґ 楫®Ґ зЁб«®, дг­ЄжЁЁ ­Ґ ЇаҐалў овбп ¤®
вҐе Ї®а, Ї®Є  га®ўҐ­м ў«®¦Ґ­­®бвЁ дг­ЄжЁЁ ­Ґ а ўҐ­ н⮬㠧­ зҐ­Ёо.
’®з­® в Є ¦Ґ, ­  ®б­®ўҐ га®ў­п ४габЁў­®© ў«®¦Ґ­­®бвЁ
Є®­ЄаҐв­®© дг­ЄжЁЁ ¬®¦Ґв Ўлвм § ¤Ґа¦ ­® ЇаҐалў ­ЁҐ ¤ ­­®©
дг­ЄжЁЁ. Љ®¬ ­¤ 

(PUT 'BRKLEVEL 'name n) ,

Ј¤Ґ <Ё¬п> - нв® Ё¬п ЇаҐалў Ґ¬®© дг­ЄжЁЁ,   <n> - Ї®«®¦ЁвҐ«м­®Ґ
楫®Ґ зЁб«®, § ¤Ґа¦Ёў Ґв ЇаҐалў ­ЁҐ ¤ ­­®© дг­ЄжЁЁ ¤® вҐе Ї®а,
Ї®Є  га®ўҐ­м ҐҐ ४габЁў­®© ў«®¦Ґ­­®бвЁ ­Ґ а ўҐ­ <n>. Ќ ЇаЁ¬Ґа,
Ї® Є®¬ ­¤ ¬:

(REMFLAG 'BRK 'REV)
(PUT 'BRKLEVEL 'APP 3)
(REV '(A B C))

Ўг¤Ґв ўлЇ®«­пвмбп б«Ґ¤го饥 ЇаҐалў ­ЁҐ:

Break-point: APP [LST1: NIL, LST2: (A)]
Continue, Break, Abort, Top-level, Restart, System?

Љ®¬ ­¤ 

(HISTORY)

ўл¤ бв ­  нЄа ­ ¤ЁбЇ«Ґп ва ббг:

2| REV [LST: (B C)]
3| REV [LST: (C)]
4| REV [LST: NIL]
4| REV = NIL
4| APP [LST1: NIL, LST2: (C)]
4| APP = (C)
3| REV = (C)
3| APP [LST1: (C), LST2: (B)]
4| APP [LST1: NIL, LST2: (B)]
4| APP = (B)
3| APP = (C B)
2| REV = (C B)
2| APP [LST1: (C B), LST2: (A)]
3| APP [LST1: (B), LST2: (A)]
4| APP [LST1: NIL, LST2: (A)] ,

  Є®¬ ­¤ 

(BACKTRACE)

ўлЇ®«­Ёв б«Ґ¤гойго ўл¤ зг:

REV [LST: (A B C)]
APP [LST1: (C B), LST2: (A)]
APP [LST1: (B), LST2: (A)]
APP [LST1: NIL, LST2: (A)]



6.3. ‘в вЁбвЁЄ 

Џ® § ўҐа襭ЁЁ ўлзЁб«Ґ­Ёп Ї®«м§®ў вҐ«м ¬®¦Ґв ®ЇаҐ¤Ґ«Ёвм
Є®«ЁзҐбвў® ўл§®ў®ў Є ¦¤®© Є®­ЄаҐв­®© ®в« ¦Ёў Ґ¬®© дг­ЄжЁЁ.
‡­ зҐ­ЁҐ ЇҐаҐ¬Ґ­­®© CALLCOUNT а ў­® ®ЎйҐ¬г зЁб«г ўл§®ў®ў Є ¦¤®©
дг­ЄжЁЁ, Ї®¬ҐзҐ­­®© ¤«п ®в« ¤ЄЁ. ‘зҐвзЁЄ ўл§®ў®ў Є ¦¤®©
Є®­ЄаҐв­®© дг­ЄжЁЁ § Ї®¬Ё­ Ґвбп ў бЇЁбЄҐ бў®©бвў ЇҐаҐ¬Ґ­­®©
CALLCOUNT. Љ®¬ ­¤ 

(CDR 'CALLCOUNT)

ўл¤ Ґв ­  нЄа ­ ¤ЁбЇ«Ґп ўбҐ Ї®¬ҐзҐ­­лҐ ®в« ¤зЁЄ®¬ дг­ЄжЁЁ ў¬ҐбвҐ
б® бзҐвзЁЄ ¬Ё ўл§®ў®ў ¤«п Є ¦¤®© Ё§ нвЁе дг­ЄжЁ©.


Џ® § ўҐа襭ЁЁ ўлзЁб«Ґ­Ёп Ї®«м§®ў вҐ«м ¬®¦Ґв в Є¦Ґ ®ЇаҐ¤Ґ«Ёвм
¬ ЄбЁ¬ «м­л© га®ўҐ­м (в.Ґ. Ј«гЎЁ­г) ўл§®ў®ў ¤«п Є ¦¤®© Є®­ЄаҐв­®©
дг­ЄжЁЁ, Ї®¬ҐзҐ­­®© ¤«п ®в« ¤ЄЁ. ‡­ зҐ­ЁҐ ЇҐаҐ¬Ґ­­®©
MAXLEVELCOUNT а ўҐ­ ¬ ЄбЁ¬ «м­®¬г га®ў­о ўл§®ў®ў ¤«п ®в« ¦Ёў Ґ¬ле
дг­ЄжЁ©. Њ ЄбЁ¬ «м­л© га®ўҐ­м ४габЁЁ ¤«п Є ¦¤®© Є®­ЄаҐв­®©
дг­ЄжЁЁ § Ї®¬Ё­ Ґвбп ў бЇЁбЄҐ бў®©бвў ЇҐаҐ¬Ґ­­®© MAXLEVELCOUNT.
Љ®¬ ­¤ 

(CDR 'MAXLEVELCOUNT)

ўл¤ Ґв ­  нЄа ­ ¤ЁбЇ«Ґп ўбҐ Ї®¬ҐзҐ­­лҐ дг­ЄжЁЁ ў¬ҐбвҐ б Ёе
¬ ЄбЁ¬ «м­л¬ га®ў­Ґ¬ ४габЁЁ.


Џ®«м§®ў вҐ«м ¬®¦Ґв в Є¦Ґ ®ЇаҐ¤Ґ«Ёвм ⥪гйЁ© га®ўҐ­м (в.Ґ.
Ј«гЎЁ­г) ўл§®ў®ў ¤«п Є ¦¤®© Є®­ЄаҐв­®© дг­ЄжЁЁ, Ї®¬ҐзҐ­­®© ¤«п
®в« ¤ЄЁ. ‡­ зҐ­ЁҐ ЇҐаҐ¬Ґ­­®© LEVELCOUNT а ў­® ⥪г饬г га®ў­о
ўл§®ў®ў ¤«п Ї®¬ҐзҐ­­ле дг­ЄжЁ©. ’ҐЄгйЁ© га®ўҐ­м ४габЁЁ ¤«п
Є®­ЄаҐв­ле дг­ЄжЁ© § Ї®¬Ё­ Ґвбп ў бЇЁбЄҐ бў®©бвў ЇҐаҐ¬Ґ­­®©
LEVELCOUNT. Љ®¬ ­¤ 

(CDR 'LEVELCOUNT)

ўл¤ Ґв ­  нЄа ­ ¤ЁбЇ«Ґп ўбҐ Ї®¬ҐзҐ­­лҐ дг­ЄжЁЁ ў¬ҐбвҐ б Ёе
⥪гйЁ¬Ё га®ў­п¬Ё ४габЁЁ.



7. ђ…„ЂЉ’Ћђ muLISP.


€б室­л© д ©« muLISP ¬®¦Ґв Ўлвм б®§¤ ­ б Ї®¬®ймо
бв ­¤ ав­®Ј® । Єв®а  ⥪бв®ў, ᮮ⢥вбвўго饣® вЁЇг ў иҐ© ќ‚Њ Ё
Ћ‘. Џа®жҐбб а §а Ў®вЄЁ Їа®Ја ¬¬ б ЁбЇ®«м§®ў ­ЁҐ¬ ў­Ґи­ҐЈ®
। Єв®а  б®бв®Ёв Ё§ ­Ґ®¤­®Єа в­® Ї®ўв®апойЁебп и Ј®ў
। ЄвЁа®ў ­Ёп, § Јаг§ЄЁ, ®в« ¤ЄЁ Ё Ї®ўв®а­®Ј® । ЄвЁа®ў ­Ёп
Ёб室­ле д ©«®ў. ЏаҐЁ¬гйҐбвў®¬ ЁбЇ®«м§®ў ­Ёп ў­Ґи­ҐЈ® । Єв®а 
пў«пҐвбп в®, з⮠㦥 Ё¬ҐҐвбп Ў®«ми®© ®Їлв ҐЈ® ЇаЁ¬Ґ­Ґ­Ёп ¤«п нвЁе
楫Ґ©. Ћ¤­ Є® ЇаЁ ўбҐ© е®а®иҐ© ЇаЁ¬Ґ­Ё¬®бвЁ ¤ ­­®Ј® ¬Ґв®¤ 
а §а Ў®вЄЁ Їа®Ја ¬¬ ®­ пў«пҐвбп ¬Ґ¤«Ґ­­л¬ Ё Ја®¬®§¤ЄЁ¬,   а Ў®в 
б ­Ё¬ - ­Ґвў®азҐбЄ®©.
„ ­­лҐ Їа®Ў«Ґ¬л б гᯥ宬 аҐи овбп б ЁбЇ®«м§®ў ­ЁҐ¬
। Єв®а  muLISP. ќв®в १Ё¤Ґ­в­л© । Єв®а §­ зЁвҐ«м­® б®Єа й Ґв
ўаҐ¬п ­  а йа Ў®вЄг Їа®Ја ¬¬ §  бзҐв Ё­вҐа ЄвЁў­®© бвагЄвгал
LISP. €бЇ®«м§гп нЄа ­­®-®аЁҐ­вЁа®ў ­­л© । Єв®а muLISP, ¬®¦­®
б®§¤ ў вм Їа®Ја ¬¬л, вҐбвЁа®ў вм Ёе Ё Ї®«­®бвмо ®в« ¦Ёў вм ў
б।Ґ muLISP. Ља®¬Ґ в®Ј®, । Єв®а ўлЇ®«­пҐв ®ЇаҐ¤Ґ«Ґ­­лҐ Є®¬ ­¤л
бЇЁбЄ®ўле бвагЄвга, ®бгйҐбвў«пҐв Ї®¤Ў®а Ї а ¬Ґва®ў ¬Ґаж о饣®
Ё§®Ўа ¦Ґ­Ёп Ё  ўв®¬ вЁзҐбЄЁ© ўлЎ®а ­®ўле бва®Є. ‚ᥠнв® Ї®§ў®«пҐв
ᤥ« вм Їа®жҐбб а §а Ў®вЄЁ Їа®Ја ¬¬ Ў®«ҐҐ вў®азҐбЄЁ¬ Ё
Їа®¤гЄвЁў­л¬.
…б«Ё ®ЎкҐ¬  Ї ¬пвЁ ­Ґ¤®бв в®з­®, Ёб室­л© д ©«,
бЈҐ­ҐаЁа®ў ­­л© б Ї®¬®ймо । Єв®а  muLISP, ¬®¦Ґв Ўлвм бзЁв ­ ў
бЁб⥬г muLISP ЎҐ§ । Єв®а , Ї®н⮬㠯 ¬пвм Ї®¤ ЇаЁЄ« ¤­лҐ
Їа®Ја ¬¬л ­Ґ § ­Ё¬ Ґвбп. ‚ ⥪г饩 ўҐабЁЁ । Єв®а 
®в। ЄвЁа®ў ­­л© ⥪бв Ї®«­®бвмо § ЇЁблў Ґвбп ў Ї ¬пвм. ќв®
­ Є« ¤лў Ґв ®Ја ­ЁзҐ­Ёп ­  ¬ ЄбЁ¬ «м­л© а §¬Ґа Ёб室­ле д ©«®ў,
Є®в®алҐ ¬®Јгв । ЄвЁа®ў вмбп б Ї®¬®ймо । Єв®а  muLISP - 50
ЉЎ ©в.
‚ а §¤Ґ«Ґ 7.1 а бб¬ ваЁў овбп Їа®жҐ¤гал з⥭Ёп । Єв®а®¬
Ёб室­®Ј® д ©«  Ё б®еа ­Ґ­Ёп । Єв®а  ў ўЁ¤Ґ Ї®б«Ґ¤­ҐЈ®
§ Ја㦥­­®Ј® SYS-д ©« . ‚ а §¤Ґ«Ґ 7.2 а бб¬ ваЁў овбп ®ЇжЁЁ
Ј« ў­®Ј® ¬Ґ­о । Єв®а . ‚ а §¤Ґ«Ґ 7.3 ¤ Ґвбп ®ЇЁб ­ЁҐ Є®¬ ­¤
Є« ўЁ вгал, ­Ґ®Ўе®¤Ё¬ле ¤«п । ЄвЁа®ў ­Ёп Ёб室­ле д ©«®ў Ё/Ё«Ё
ўаҐ¬Ґ­­®Ј® ЇаҐЄа йҐ­Ёп । ЄвЁа®ў ­Ёп ­  ЇҐаЁ®¤ вҐбвЁа®ў ­Ёп Ё
®в« ¤ЄЁ ®ЇаҐ¤Ґ«Ґ­Ё© дг­ЄжЁ©. ‚ а §¤Ґ«Ґ 7.4 а бб¬ ваЁў Ґвбп, Є Є
бЁб⥬  б®еа ­пҐв ⥪бв ­  нЄа ­Ґ ¤ЁбЇ«Ґп,   в Є¦Ґ гЇа ў«пҐв Ё¬.
ќв  Ё­д®а¬ жЁп Ўг¤Ґв Ї®«Ґ§­  ў ⮬ б«гз Ґ, Є®Ј¤  Ї®«м§®ў вҐ«м
е®зҐв Ё§¬Ґ­Ёвм Ё«Ё ¤®Ї®«­Ёвм ў®§¬®¦­®б⨠। Єв®а .

7.1. ‡ Јаг§Є  Ё б®еа ­Ґ­ЁҐ । Єв®а 

ђҐ¤ Єв®а muLISP ЇаҐ¤®бв ў«пҐвбп бЁб⥬®© Є Є Ёб室­л© д ©«
EDIT.LSP. „ ­­л© д ©« ¬®¦Ґв Ўлвм бзЁв ­ Ё б®еа ­Ґ­ Є Є SYS-д ©«.
‘ ¬л¬ Їа®бвл¬ Їг⥬ § Јаг§ЄЁ д ©«  EDIT.LSP пў«пҐвбп ўў®¤ Є®¬ ­¤л:

MULISP EDIT.LSP

„ ­­ п Є®¬ ­¤  § Јаг¦ Ґв muLISP,ўл¤ Ґв ­  нЄа ­ ¤ЁбЇ«Ґп
бв ­¤ ав­®Ґ б®®ЎйҐ­ЁҐ muLISP,   § вҐ¬ ЇаЁбвгЇ Ґв Є з⥭Ёо
EDIT.LSP. Џ®б«Ґ ­ҐбЄ®«мЄЁе ᥪ㭤 ўў®¤  бЁб⥬  бЇа иЁў Ґв, б
Є ЄЁ¬ । Єв®а®¬ е®зҐв а Ў®в вм Ї®«м§®ў вҐ«м: б WorldStar-like
Ё«Ё Emacs-like. …б«Ё г Ї®«м§®ў вҐ«п ­Ґв ¤агЈ®Ј® ¬­Ґ­Ёп,
४®¬Ґ­¤гҐвбп ўлЎа вм ®ЇжЁо WordStar-like.
Љ Є в®«мЄ® Ї®пўЁвбп Ї®¤бЄ §Є  ў ўЁ¤Ґ §­ Є  ¤®«« а , ўўҐ¤ЁвҐ
Є®¬ ­¤г:

(SAVE EDIT) ,

б®еа ­пойго । Єв®а ў ўЁ¤Ґ Ї®б«Ґ¤­ҐЈ® § Ја㦥­­®Ј® SYS-д ©«  б
Ё¬Ґ­Ґ¬ EDIT.SYS.

‘®еа ­Ёў ®¤Ё­ а § д ©« EDIT.SYS, ў 室Ґ ¤ «м­Ґ©йҐ© а Ў®вл б
muLISP ¤«п § Јаг§ЄЁ Ё а Ў®вл । Єв®а  ўл ¬®¦ҐвҐ ЁбЇ®«м§®ў вм
Є®¬ ­¤г:

MULISP EDIT

…б«Ё ¦Ґ muLISP 㦥 Ўл« § Ја㦥­, ўўҐ¤ЁвҐ Є®¬ ­¤г:

(LOAD EDIT)

ўб«Ґ¤ §  §­ Є®¬ ¤®«« а ; Є®¬ ­¤  ®ЎҐбЇҐзЁв § Јаг§Єг । Єв®а  Ё
­ з «® ҐЈ® а Ў®вл. Ћ¤­ Є® б«Ґ¤гҐв ®в¬ҐвЁвм, зв® Є®¬ ­¤  LOAD
ўл§лў Ґв ЇҐаҐ§ ЇЁбм ⥪г饩 б।л muLISP, ўЄ«оз п ўбҐ ®ЇаҐ¤Ґ«Ґ­Ёп
дг­ЄжЁ©, бў®©бвў Ё в.¤.
…б«Ё ўл ¤®«¦­л § Јаг§Ёвм । Єв®а ў бгйҐбвўгойго б।г,
ўлЇ®«­ЁвҐ Є®¬ ­¤г:

(RDS EDIT)


7.2. ЋЇжЁЁ Ј« ў­®Ј® ¬Ґ­о

Љ Є в®«мЄ® । Єв®а muLISP ­ зЁ­ Ґв а Ў®в вм, ®­ зЁбвЁв
нЄа ­, аЁбгҐв а ¬Єг Ё ўл¤ Ґв ­  нЄа ­ Ј®«®ў­®Ґ ¬Ґ­о:

Edit, Print, Screen, Lisp, Quit:

‡ вҐ¬ бЁб⥬  ¦¤Ґв, Ї®Є  Ї®«м§®ў вҐ«м ­Ґ ўлЎҐаҐв ®¤­г Ё§
®ЇжЁ© Їг⥬ ўў®¤  ЇҐаў®© ЎгЄўл ҐҐ Ё¬Ґ­Ё (E. P. S. L Ё«Ё Q).
- Edit: ўл¤ Ґв ­  нЄа ­ Ї®¤бЄ §Єг "Edit file:" Ё ¦¤Ґв, Ї®Є 
Ї®«м§®ў вҐ«м ­Ґ ўўҐ¤Ґв Ё¬п д ©« , Є®в®ал© вॡгҐвбп
®в। ЄвЁа®ў вм. …б«Ё ўл ЇҐаҐ¤г¬ «Ё, в® Їа®бв® ­ ¦¬ЁвҐ Є« ўЁиг
<RETURN> ¤«п ўл室  ў Ј« ў­®Ґ ¬Ґ­о. ‚ Їа®вЁў­®¬ б«гз Ґ, ўўҐ¤ЁвҐ
Ё¬п д ©«  (­ ЇаЁ¬Ґа, C:EXPERT.LSP) Ё ­ ¦¬ЁвҐ <RETURN>. Џ®
㬮«з ­Ёо ЁбЇ®«м§гҐвбп вЁЇ д ©«  "LSP",   в Є¦Ґ
§ аҐЈЁбваЁа®ў ­­®Ґ гбва®©бвў®.
ђҐ¤ Єв®а бзЁв Ґв Ё ўл¤ бв ­  нЄа ­ д ©«, ЇҐаҐЎа®бЁў Єгаб®а ў
ўҐае­Ё© «Ґўл© гЈ®« нЄа ­  (в.Ґ. ў Ёб室­®Ґ Ї®«®¦Ґ­ЁҐ). ‘¬. а §¤Ґ«
7.3, Ј¤Ґ ®ЇЁблў Ґвбп, Є Є । ЄвЁа®ў вм ⥪бв ў д ©«Ґ.
- Print: ўл¤ Ґв ­  нЄа ­ Ї®¤бЄ §Єг "Print file:" Ё ¦¤Ґв,
Ї®Є  Ї®«м§®ў вҐ«м ­Ґ ўўҐ¤Ґв Ё¬п д ©«  ¤«п ЇҐз вЁ. …б«Ё ўл
ЇҐаҐ¤г¬ «Ё, ­ ¦¬ЁвҐ Є« ўЁиг <RETURN> ¤«п ўл室  ў Ј« ў­®Ґ ¬Ґ­о. ‚
Їа®вЁў­®¬ б«гз Ґ ўўҐ¤ЁвҐ Ё¬п д ©«  Ё ­ ¦¬ЁвҐ <RETURN>,
ЇаҐ¤ў аЁвҐ«м­® гЎҐ¤ЁўиЁбм, зв® ў иҐ ЇҐз в о饥 гбва®©бвў® Ј®в®ў®
Є а Ў®вҐ. ђҐ¤ Єв®а ЇаЁбвгЇЁв Є ЇҐз вЁ д ©« .
- Screen: ўл¤ Ґв ­  нЄа ­ Ї®¤бЄ §Єг
"Full,Vertical,Horizontal:" Ё ¦¤Ґв, Ї®Є  Ї®«м§®ў вҐ«м ­Ґ ўлЎҐаҐв
®¤­г Ё§ ®ЇжЁ© (F, V Ё«Ё H). ЋЇжЁп "Full screen" (Ї®«­л© нЄа ­)
ЁбЇ®«м§гҐв ¤«п । ЄвЁа®ў ­Ёп Ї®«­л© нЄа ­. ЋЇжЁп "Vertical split
screen" (ўҐавЁЄ «м­л© нЄа ­) ЁбЇ®«м§гҐв Їа ўго Ї®«®ўЁ­г нЄа ­ 
¤«п । ЄвЁа®ў ­Ёп,   «Ґўго - ¤«п ®в« ¤зЁЄ . ЋЇжЁп "Horizontal
split screen" (Ј®аЁ§®­в «м­л© нЄа ­) ЁбЇ®«м§гҐв ўҐае­оо Ї®«®ўЁ­г
нЄа ­  ¤«п । ЄвЁа®ў ­Ёп,   «Ґўго - ¤«п ®в« ¤ЄЁ. …б«Ё ў ¬ ­г¦­®
Ї®¬Ґ­пвм нЄа ­, ­ ¦¬ЁвҐ Є« ўЁиг <SPACE>.
- Lisp: § ўҐаи Ґв а Ў®вг । Єв®а ; ­  нЄа ­Ґ Ї®пў«пҐвбп
§­ Є ¤®«« а . Џ® § ўҐа襭ЁЁ а Ў®вл muLISP ўл ¬®¦ҐвҐ ўҐа­гвмбп ў
। Єв®а Ї® Є®¬ ­¤Ґ:

(RETURN)

- Quid: § ўҐаи Ґв а Ў®вг । Єв®а  Ё бЁб⥬л muLISP Ё
ЇҐаҐ¤ Ґв гЇа ў«Ґ­ЁҐ Ћ‘.


7.3. Љ®¬ ­¤л Є« ўЁ вгал

ђҐ¤ Єв®а muLISP - нЄа ­­®-®аЁҐ­вЁа®ў ­­л© । Єв®а ®ЎйҐЈ®
­ §­ зҐ­Ёп; ®­ Ї®б«Ґ¤®ў вҐ«м­® ўл¤ Ґв ­  нЄа ­ ¤ЁбЇ«Ґп "®Є­®" Ё«Ё
"Є авЁ­Єг" б ⥪б⮬. ‘«Ґ¤®ў вҐ«м­®, Ї®«м§®ў вҐ«м ¬®¦Ґв ў­ҐбвЁ
Є ЄЁҐ-«ЁЎ® Ё§¬Ґ­Ґ­Ёп Ё ба §г ¦Ґ Ї®б¬®ваҐвм १г«мв в.
’.Є. । Єв®а Ї®«­®бвмо б®бв ў«Ґ­ ­  muLISP, «оЎ®©
Ї®«м§®ў вҐ«м ¬®¦Ґв Ї® ­Ґ®Ўе®¤Ё¬®бвЁ ¤®Ї®«­Ёвм бЁб⥬г. ЏаЁ ўў®¤Ґ
Є®­ва®«м­®Ј® бЁ¬ў®«  ASCII ўл§лў Ґвбп ᮮ⢥вбвўгой п дг­ЄжЁп,
ўлЇ®«­пой п ­г¦­го Ї®«м§®ў вҐ«о ®ЇҐа жЁо. ЋЎлз­® ¤ ­­ п дг­ЄжЁп
¬®¦Ґв Ўлвм ЇҐаҐ®ЇаҐ¤Ґ«Ґ­  ¤«п ўлЇ®«­Ґ­Ёп Є Є®©-«ЁЎ® вॡ㥬®©
§ ¤ зЁ. Ѓ®«ҐҐ Ї®«­® нв®в Їа®жҐбб ®ЇЁблў Ґвбп ў а §¤Ґ«Ґ 7.4.
ЋЎй п бва вҐЈЁп а Ў®вл б । Єв®а®¬ muLISP ¬®¦Ґв Ўлвм
ўла ¦Ґ­  ¤ўг¬п и Ј ¬Ё:
1) ЇҐаҐўҐбвЁ Єгаб®а ў вг з бвм ⥪бв , Є®в®аго ўл е®вЁвҐ
®в। ЄвЁа®ў вм;
2) ўбв ўЁвм, г­Ёз⮦Ёвм Ё«Ё Ё§¬Ґ­Ёвм ⥪бв, ­ зЁ­ п б
®в¬ҐзҐ­­®Ј® ¬Ґбв .
ђҐ¤ Єв®а muLISP ¬®¦Ґв Ё¬Ґвм «ЁЎ® вЁЇ WordStar-like, «ЁЎ®
вЁЇ Emasc-like (б¬. а §¤Ґ« 7.1). Љ®¬ ­¤л Є« ўЁ вгал ¤«п
। Єв®а®ў ®Ў®ҐЈ® вЁЇ  ЇаЁўҐ¤Ґ­л ў ЏаЁ«®¦Ґ­ЁЁ E Ё F
ᮮ⢥вб⢥­­®. „«п гЇа®йҐ­Ёп Ї®б«Ґ¤гойЁе ®ЇЁб ­Ё© Ўг¤Ґ¬ бзЁв вм,
з⮠। Єв®а Ё¬ҐҐв вЁЇ WordStar-like.


7.3.1. Љ®¬ ­¤л гЇа ў«Ґ­Ёп Єгаб®а®¬

Љ®¬ ­¤л гЇа ў«Ґ­Ёп Єгаб®а®¬ ЇаҐ¤­ §­ зҐ­л ¤«п ЇҐаҐў®¤ 
Єгаб®а  ў вг в®зЄг ⥪бв , Єг¤  ЇаҐ¤Ї®« Ј Ґвбп ў­ҐбвЁ Ё§¬Ґ­Ґ­Ёп.
“Їа ў«Ґ­ЁҐ Єгаб®а®¬ (Ў«®Є®¬ ᢥвпйЁебп «Ё­Ё©, гЄ §лў ойЁе,
Ј¤Ґ Ї®пўЁвбп б«Ґ¤гойЁ© ўўҐ¤Ґ­­л© бЁ¬ў®«) ®бгйҐбвў«пҐвбп б Ї®¬®ймо
Є®­ва®«м­ле бЁ¬ў®«®ў. „«п Ў®«миЁ­бвў  Є®­б®«Ґ© Є®­ва®«м­лҐ
бЁ¬ў®«л ўў®¤пвбп Їг⥬ ­ ¦ вЁп Є®­ва®«м­®© Є« ўЁиЁ б «Ґў®©
бв®а®­л Є« ўЁ вгал, ®Ўлз­® Ї®¬ҐзҐ­­®© Ctrl, Ё ®¤­®ўаҐ¬Ґ­­® -
ᮮ⢥вбвўго饩 ЎгЄўл.
“Їа ў«Ґ­ЁҐ Єгаб®а®¬ ўлЇ®«­пҐвбп, ў-®б­®ў­®¬, Ї® Їа ўЁ«г
§­ Є  "+", в.Ґ. ¤«п бв ­¤ ав­ле Є« ўЁ вга Ї®«®¦Ґ­ЁҐ Є«оз 
ᮮ⢥вбвўгҐв ­ Їа ў«Ґ­Ёо, Ї® Є®в®а®¬г ЇҐаҐ¤ўЁЈ Ґвбп Єгаб®а.
„ ­­®Ґ Їа ўЁ«® Ё««обваЁагҐв б«Ґ¤гой п ¤Ё Ја ¬¬ :

UP

|
E
LEFT <-- A <-- S D --> F --> RIGHT
X
|

DOWN

‘в५Є ¬Ё ®Ў®§­ зҐ­® ­ Їа ў«Ґ­ЁҐ, Ї® Є®в®а®¬г Ўг¤Ґв
ЇҐаҐ¤ўЁЈ вмбп Єгаб®а ЇаЁ ўў®¤Ґ бб®вўвбвўго饣® Є®­ва®«м­®Ј®
бЁ¬ў®« . „«Ё­  бв५®Є ®Ў®§­ з Ґв ®в­®бЁвҐ«м­го ўҐ«ЁзЁ­г
ЇҐаҐ¬ҐйҐ­Ёп Єгаб®а .
<Ctrl-D> Ё <Ctrl-S> ЇҐаҐ¬Ґй ов Єгаб®а ᮮ⢥вб⢥­­® ўЇа ў®
Ё ў«Ґў® ­  бЁ¬ў®«. <Ctrl-Ќ> Ё«Ё Є« ўЁи  <BACKSPACE> в Є¦Ґ
ЇҐаҐ¬Ґй Ґв Єгаб®а ў«Ґў® ­  бЁ¬ў®«. <Ctrl-F> Ё <Ctrl-Ђ> ЇҐаҐ¬Ґй ов
Єгаб®а ᮮ⢥вб⢥­­® ўЇа ў® Ё ў«Ґў® ­  б«®ў®, б¤ўЁЈ п Єгаб®а ў
­ з «® б«®ў . ‘«®ў® - нв® Ї®б«Ґ¤®ў вҐ«м­®бвм бЁ¬ў®«®ў ў ⥪бвҐ,
®Ја ­ЁзҐ­­ п Їа®ЎҐ«®¬, § Їпв®©, ¤ў®Ґв®зЁҐ¬, в®зЄ®© б § Їпв®©,
­ з «®¬ Ё«Ё Є®­ж®¬ бва®ЄЁ.
Ћв¬ҐвЁ¬, зв® ¤«п ¤ ­­ле зҐвлаҐе Є®¬ ­¤ Ї®¤а §г¬Ґў Ґвбп, зв®
⥪бв ­  нЄа ­Ґ - нв® ®¤­  ¤«Ё­­ п Ї®б«Ґ¤®ў вҐ«м­®бвм бЁ¬ў®«®ў.
‘«Ґ¤®ў вҐ«м­®, Є®¬ ­¤л, Є®в®алҐ ®Ўлз­® ЇҐаҐ¬Ґй ов Єгаб®а ўЇа ў®,
 ўв®¬ вЁзҐбЄЁ б¤ўЁЈ ов ҐЈ® ў­Ё§, ў ­ з «® б«Ґ¤го饩 бва®ЄЁ, Є Є
в®«мЄ® Ўг¤Ґв ¤®бвЁЈ­гв Їа ўл© Є®­Ґж ⥪г饩 бва®ЄЁ. Љ®¬ ­¤л,
®Ўлз­® ЇҐаҐ¬Ґй ойЁҐ Єгаб®а ў«Ґў®,  ўв®¬ вЁзҐбЄЁ б¤ўЁЈ ов ҐЈ®
ўўҐае ­  Є®­Ґж ЇаҐ¤л¤г饩 бва®ЄЁ, Є Є в®«мЄ® Ўг¤Ґв ¤®бвЁЈ­гв
«Ґўл© Є®­Ґж ⥪г饩 бва®ЄЁ.
<Ctrl-…> Ё <Ctrl-•> ЇҐаҐ¬Ґй ов Єгаб®а ᮮ⢥вб⢥­­® ўўҐае Ё
ў­Ё§ ­  бва®Єг.
…б«Ё । Єв®а Ё¬ҐҐв вЁЇ Replace (б¬. а §¤Ґ« 7.3.3), <Ctrl-Њ>
Ё«Ё Є« ўЁи  <TAB> ЇҐаҐ¬Ґй ов Єгаб®а ўЇа ў® Є б«Ґ¤го饩 tab stop
(в.Ґ. Є б«Ґ¤го饩 Є®«®­ЄҐ, ­®¬Ґа Є®в®а®© Єа вҐ­ 8). <Ctrl-Њ> Ё«Ё
Є« ўЁи  <RETURN> ЇҐаҐ¬Ґй ов Єгаб®а ў­Ё§ Є ­ з «г б«Ґ¤го饩
бва®ЄЁ. ‘¬. а §¤Ґ« 7.3.3., Ј¤Ґ ®ЇЁб ­®, Є Є а Ў®в Ґв <TAB> Ё
<RETURN> ЇаЁ । Єв®аҐ вЁЇ  Invert.
…б«Ё ­Ё¦Ґ Єгаб®а  в Є¦Ґ Ё¬ҐҐвбп бва®Є  ⥪бв , <Ctrl-J> Ё«Ё
Є« ўЁи  <LINEFEED> ЇҐаҐ¬Ґй ов Єгаб®а ў ­ з «® ¤ ­­®© бва®ЄЁ
⥪бв . ‚ Їа®вЁў­®¬ б«гз Ґ нвЁ Є®¬ ­¤л ЇҐаҐ¬Ґй ов Єгаб®а ў­Ё§ ­ 
бва®Єг Ё  ўв®¬ вЁзҐбЄЁ ®в¬Ґз ов  Ў§ ж б®Ј« б­® Є®«ЁзҐбвўг
®вЄалвле Ё § Єалвле бЄ®Ў®Є Ё ўб室­®© «Ё­ЁЁ Єгаб®а .
‡­ зЁвҐ«м­® ०Ґ ЁбЇ®«м§говбп Є®¬ ­¤л Єгаб®а , Є®в®алҐ
Ё­ЁжЁЁаговбп Їг⥬ ўў®¤  Ї ал бЁ¬ў®«®ў. ‚ ®ЎйҐ¬ б«гз Ґ, Ї ал
Є®¬ ­¤, ­ зЁ­ ойЁҐбп б <Ctrl-Q>, гбЁ«Ёў ов ¤Ґ©бвўЁҐ Є®¬ ­¤,
®Ў®§­ зҐ­­ле ўв®ал¬ бЁ¬ў®«®¬ Ї ал.
‘«Ґ¤®ў вҐ«м­®, <Ctrl-Q>D ЇҐаҐ¬Ґй Ґв Єгаб®а ў Їа ўл© Є®­Ґж
⥪г饩 бва®ЄЁ, <Ctrl-Q>S - ў «Ґўл© Є®­Ґж ⥪г饩 бва®ЄЁ,
<Ctrl-Q>• - ў ­Ё¦­Ё© Є®­Ґж нЄа ­ , <Ctrl-Q>E - ў ўҐае­Ё© Є®­Ґж
нЄа ­ .
<Ctrl-Q>I ЇҐаҐ¬Ґй Ґв Єгаб®а ў«Ґў® ў ЇаҐ¤л¤гйЁ© tab stop.
<Ctrl-Q>P ЇҐаҐ¬Ґй Ґв Єгаб®а ў вг Ї®§ЁжЁо, ў Є®в®а®© ®­
­ е®¤Ё«бп ¤® в®Ј®, Є Є Ўл«Ё ўлЇ®«­Ґ­л Є®¬ ­¤л ЇҐаҐ¬ҐйҐ­Ёп, в ЄЁҐ,
Є Є <Ctrl-Q>X Ё«Ё <Ctrl-Q>E.










। Єв®аҐ




­ з 




Соседние файлы в папке Filp