Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚-ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΠΊ. ΠŸΡƒΡ‚ΡŒ ΠΎΡ‚ ΠΏΠΎΠ΄ΠΌΠ°ΡΡ‚Π΅Ρ€ΡŒΡ ΠΊ мастСру». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 18

Автор Π­Π½Π΄Ρ€ΡŽ Π₯Π°Π½Ρ‚

record = X25UNE1.get(format=ABC123)

if (record.balanc<0):

  X25UNE1.put(record, format=ABC123)

else:

  TELSTR1.put(record, format=XYZ43B)

  DB.store(record)

Π―Π·Ρ‹ΠΊΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Π΅ языки

Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π²Π°ΠΌΠΈ языки ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ двумя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами.

Π―Π·Ρ‹ΠΊΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½Π΅ΠΊΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΈ языки часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для прСдставлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

НапримСр, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° sendmail примСняСтся Π²ΠΎ всСм ΠΌΠΈΡ€Π΅ для ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹ Π² сСти Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. Она ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ достоинствами ΠΈ прСимущСствами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, написанном Π½Π° собствСнном языкС конфигурирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ sendmail:

Mlocal, P=/usr/bin/procmail,

F=lsDFMAw5:/|@qSPfhn9,

S=10/30, R=20/40,

T=DNS/RFC822/X-Unix,

A=procmail -Y -a $h -d $u 

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π½Π΅ являСтся сильной стороной sendmail.

Π£ΠΆΠ΅ Π΄Π°Π²Π½ΠΎ Ρ„ΠΈΡ€ΠΌΠ° Microsoft ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ язык Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ мСню, Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ ΠΎΠΊΠΎΠ½, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ ΠΎΠΊΠ½Π° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ рСсурсы Windows. На рис. 2.2 ΠΏΠΎΠΊΠ°Π·Π°Π½ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° рСсурсов. Он читаСтся Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³Ρ‡Π΅, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ sendmail, Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ – компилируСтся для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ….

Рис. 2.2. Π€Π°ΠΉΠ» .rc для Windows 

MAIN_MENU MENU

{

  POPUP " &File"

 {

  MENUITEM "&New", CM_FILENEW

  MENUITEM "&Open…", CM_FILEOPEN

  MENUITEM "&Save", CM_FILESAVE

 }

}

MY_DIALOG_BOX DIALOG 6,15,292,287

STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU

CAPTION "My Dialog Box"

FONT 8, "MS Sans Serif"

{

DEFPUSHBUTTON Β«OKΒ», ID_OK, 232,16, 50,14

PUSHBUTTON Β«HelpΒ», ID.HELP, 232, 52, 50,14

CONTROL "Edit Text Control", ID EDIT1, "EDIT", WS_BODER | WS_TABSTOP, 16,16, 80, 56

CHECKBOX Β«CheckboxΒ», ID CHECKBOX 1,153, 65,42,38, BS_AUTOCHECKBOX | WS_ABSTOP 

}


ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Π΅ языки ΠΈΠ΄ΡƒΡ‚ дальшС. Π’ этом случаС язык являСтся исполняСмым ΠΈ поэтому ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ инструкции, конструкции управлСния ΠΈ Ρ‚. ΠΏ. (ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ Π½Π° с. 50).

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ собствСнныС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Π΅ языки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сопровоТдСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НапримСр, вас просят ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· унаслСдованного прилоТСния Π² Π½ΠΎΠ²ΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ графичСского интСрфСйса. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это осущСствляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ "экранного ΠΊΠ°Ρ€ΠΌΠ°Π½Π°"; вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ связываСтся с основным (mainframe) ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ-Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, гСнСрируя наТатия клавиш ΠΈ «считывая» ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Π΅ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ сцСнарий взаимодСйствия ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠΈΠ½ΠΈ-языка [14].

locate prompt "SSN:"

type "%s" social_security_number

type enter

waitfor keyboardunlock

if text_at(10,14) is "INVALID SSN" return bad_ssn

if text_at(10,14) is "DUPLICATE SSN" return dup_ssn

# etc…

Когда ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ опрСдСляСт, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€Π° Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ SSN, Ρ‚ΠΎ ΠΏΠΎ этому ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ ΠΎΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ управляСт Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠ΅ΠΉ. Если ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ встроСн Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°).

Π’ этом случаС Π²Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области программиста сопровоТдСния. Когда измСняСтся основноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ поля ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ, программист ΠΌΠΎΠΆΠ΅Ρ‚ просто ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ высокоуровнСвоС описаниС, вмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΏΠ°Ρ‚ΡŒΡΡ Π² подробностях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС Π‘.

АвтономныС ΠΈ встроСнныС языки

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ, ΠΌΠΈΠ½ΠΈ-язык Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. МоТно ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ язык спСцификации для создания искусствСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΈΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (см. "ΠœΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅").

НапримСр, Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ "ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° тСкста" описываСтся систСма, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΡ‹ использовали Perl, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большоС количСство Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ спСцификации схСмы. ΠœΡ‹ ΠΈΠ·ΠΎΠ±Ρ€Π΅Π»ΠΈ ΠΎΠ±Ρ‰ΠΈΠΉ язык, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ схСму Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ Π·Π°Ρ‚Π΅ΠΌ сгСнСрировали всС Π΅Π³ΠΎ Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹, β€“ SQL, Π‘, ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-страницы, XML ΠΈ Π΄Ρ€. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ использовало ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π½ΠΎ ΠΎΠ½ΠΎ полагалось Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠ· Π½Π΅Π΅.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся встраиваниС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Ρ… языков высокого уровня нСпосрСдствСнно Π² вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ исполнялись, ΠΊΠΎΠ³Π΄Π° исполняСтся ваша ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ это ΠΌΠΎΡ‰Π½ΠΎΠ΅ срСдство; ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ прилоТСния, Π²Π°Ρ€ΡŒΠΈΡ€ΡƒΡ сцСнарии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΎ считываСт, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ всС это

НСслоТная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ»ΠΈ нСслоТноС сопровоТдСниС?

ΠœΡ‹ рассмотрСли нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊ – ΠΎΡ‚ простых строчно-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТных, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выглядят ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ языки. Если для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ усилия, Ρ‚ΠΎΠ³Π΄Π° Π·Π°Ρ‡Π΅ΠΌ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΡƒ?

ΠšΠΎΠΌΠΏΡ€ΠΎΠΌΠΈΡΡΠΎΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ сопровоТдСниС. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π° Β«Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎΒ» языка ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТной Π² написании, для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ понятнСС, ΠΈ Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³Ρ‡Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π·Π° счСт добавлСния Π½ΠΎΠ²Ρ‹Ρ… срСдств ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй. Блишком простыС языки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΈΠΌΠΈ для грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π°, Π½ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ – ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ sendmail (см. "Π―Π·Ρ‹ΠΊΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Π΅ языки").

Учитывая, Ρ‡Ρ‚ΠΎ срок слуТбы Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ, Π²Π°ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ€ΠΈΡ‚ΡŒΡΡ с суровой Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ Π±ΠΎΠ»Π΅Π΅ слоТный ΠΈ ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ язык. Усилия, Π·Π°Ρ‚Ρ€Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Π²Π½Π°Ρ‡Π°Π»Π΅, ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ окупятся Π·Π° счСт сниТСния Π·Π°Ρ‚Ρ€Π°Ρ‚ Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΈ сопровоТдСниС.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹, относящиСся ΠΊ Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅:

β€’ ΠœΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Вопросы для обсуТдСния

β€’ ΠœΠΎΠΆΠ½ΠΎ Π»ΠΈ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² настоящСС врСмя, Π½Π° языкС, ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅ΠΌ спСцифику ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области? Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ компилятор ΠΈΠ»ΠΈ транслятор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠ³ Π±Ρ‹ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹?

β€’ Π•сли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΌΠΈΠ½ΠΈ-язык ΠΊΠ°ΠΊ способ программирования, Π±Π»ΠΈΠ·ΠΊΠΈΠΉ ΠΊ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области, Π²Ρ‹ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅ ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ для ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ усилия. Как Π²Ρ‹Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, Π΅ΡΡ‚ΡŒ Π»ΠΈ способы, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… «скСлСт», Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ…?

УпраТнСния

5. Π’рСбуСтся Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈ-язык управлСния простым графичСским ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, с Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Π² ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ…). Π―Π·Ρ‹ΠΊ состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄. ПослС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ указываСтся число. НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π½Π° экранС ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. (ΠžΡ‚Π²Π΅Ρ‚ см. Π² ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π’.)

Π  2 # select pen 2

D # pen down

W 2 # draw west 2cm

N 1 # then north 1

E 2 # then east 2

S 1 # then back south

U # pen up

Π‘ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ этот язык. Она Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ опСрация добавлСния Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Π±Ρ‹Π»Π° нСслоТной.

6. Π‘ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΡƒ BNF (Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Бэкуса-Наура), Ρ‡Ρ‚ΠΎΠ±Ρ‹ провСсти грамматичСский Ρ€Π°Π·Π±ΠΎΡ€ спСцификаций Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ВсС ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. (ΠžΡ‚Π²Π΅Ρ‚ см. Π² ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π’.)

4pm, 7:38pm, 23:42, 3:16, 3:16am

7. Π Π΅Π°Π»ΠΈΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π° для Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΈ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Бэкуса-Наура Π² ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΈ 6, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ уасс, bison ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π°. (ΠžΡ‚Π²Π΅Ρ‚ см. Π² ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π’.)

8. Π Π΅Π°Π»ΠΈΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Perl. (Подсказка: рСгулярныС выраТСния ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ грамматичСского Ρ€Π°Π·Π±ΠΎΡ€Π°.) (ΠžΡ‚Π²Π΅Ρ‚ см. Π² ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π’.)

13

ΠžΡ†Π΅Π½ΠΊΠ°

Бколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ потрСбуСтся для пСрСсылки "Π’ΠΎΠΉΠ½Ρ‹ ΠΈ ΠΌΠΈΡ€Π°" ΠΏΠΎ ΠΌΠΎΠ΄Π΅ΠΌΠ½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ Π² 56 Π±Π°ΠΉΡ‚? КакоС мСсто Π·Π°ΠΉΠΌΠ΅Ρ‚ Π½Π° дискС ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ ΠΈΠΌΠ΅Π½ ΠΈ адрСсов? Бколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ понадобится для прохоТдСния 1000-Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€? Бколько мСсяцСв потрСбуСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚?

Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, всС эти вопросы бСссмыслСнны – информация, содСрТащаяся Π² Π½ΠΈΡ…, нСдостаточна для ΠΎΡ‚Π²Π΅Ρ‚Π°. И Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π½Π° всС ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ, Ссли Π²Ρ‹ смоТСтС провСсти ΠΎΡ†Π΅Π½ΠΊΡƒ. Π’ процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΎΡ†Π΅Π½ΠΊΠΈ, Π²Ρ‹ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚Π΅ ΠΊ Π±ΠΎΠ»ΡŒΡˆΠ΅ΠΌΡƒ пониманию ΠΌΠΈΡ€Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ±ΠΈΡ‚Π°ΡŽΡ‚ ваши ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠΠ°ΡƒΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ развивая этот Π½Π°Π²Ρ‹ΠΊ Π΄ΠΎ уровня, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρƒ вас появляСтся ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π°, Π²Ρ‹ смоТСтС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ явно ΠΌΠ°Π³ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΈΡ… выполнимости. Если ΠΊΡ‚ΠΎ-Π»ΠΈΠ±ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚: "ΠœΡ‹ Π²Ρ‹ΡˆΠ»Π΅ΠΌ Π²Π°ΠΌ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ ISDN Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ офис", Π²Ρ‹ смоТСтС ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ ΠΎΡΠΎΠ·Π½Π°Ρ‚ΡŒ, ΠΈΠΌΠ΅Π΅Ρ‚ Π»ΠΈ это смысл. Когда Π²Ρ‹ составляСтС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹ смоТСтС ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ подсистСмы Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, Π° ΠΊΠ°ΠΊΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΠΎΠΊΠΎΠ΅.


Подсказка 18: ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΎΡ†Π΅Π½ΠΊΠΈ Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΡΡŽΡ€ΠΏΡ€ΠΈΠ·ΠΎΠ²


Π’ ΠΊΠΎΠ½Ρ†Π΅ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π° ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ СдинствСнно ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚ (Π² Π²ΠΈΠ΄Π΅ бСсплатного прилоТСния), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π°Π²Π°Ρ‚ΡŒ Π²ΠΎ всСх случаях, ΠΊΠΎΠ³Π΄Π° вас просят ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ.