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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π–ΡƒΡ€Π½Π°Π» Β«ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ€Π°Β» β„– 8 ΠΎΡ‚ 27 фСвраля 2007 Π³ΠΎΠ΄Π°Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 10

Автор ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ€Π°

Π”Π°Π»Π΅Π΅ мэйнстримовая, структурная ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя дополнялась (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, шаблонами C++, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Β«ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅Β» классы ΠΈ Β«ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Π΅Β» Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹). Но ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π° ΠΌΠΈΡ€Π° вновь Π½Π°Ρ‡Π°Π»Π° ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ «большой чисткС» языков ΠΈ смСнС расклада, Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒ Π»Π΅Ρ‚ казавшСгося Π½Π΅Π·Ρ‹Π±Π»Π΅ΠΌΡ‹ΠΌ. По своСй ваТности эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Ρ‹ Π±Π»ΠΈΠ·ΠΊΠΈ ΠΊ событиям, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Fortran, Cobol ΠΈ PL/I смСнились CΠΈ, БСйсиком ΠΈ ПаскалСм.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½ Ρ‚ΠΎΠΌΡƒ Π±Ρ‹Π»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ нСльзя Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ, Π³Π»Π°Π²Π½ΡƒΡŽ. Π’Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΠ΅, Π²ΠΈΠ΄ΠΈΠΌΠΎ, Ρ‚Π°ΠΊΠΎΠ²Ρ‹: рост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΆΠ΅Π»Π΅Π·Π°, с ΠΎΠ΄Π½ΠΎΠΉ стороны, ΠΈ вострСбованности программистов (Π΄Π°ΠΆΠ΅ Π½Π΅ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ…) β€” с Π΄Ρ€ΡƒΠ³ΠΎΠΉ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ софта становится Π²Π°ΠΆΠ½Π΅Π΅ Π΅Π³ΠΎ быстродСйствия [Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ…, СстСствСнно, ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ…. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π½Π΅ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½Π° ΠΈΠ· Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… Ρ†Π΅Π»Π΅ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² C++ β€” Β«ΠΏΠΎΡ‡Ρ‚ΠΈ Π±Π΅ΡΠΏΠ»Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ (ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ)Β» Π½ΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ β€” стала Π°Π½Π°Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΌΠΎΠΌ]; Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΈ популяризация ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… сСтСй «для всСх» (Π² Ρ‚ΠΎΠΌ числС ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°/Π²Π΅Π±Π°), Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ «сСтСвоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β» стало всСобщСй Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния прСсловутых Β«ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΒ» программирования ваТнСйшая тСндСнция Β«Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈΒ» β€” ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: нСзависимыС Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ написаны Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках, ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² скомпилированной Ρ„ΠΎΡ€ΠΌΠ΅, Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π½Π° Π»Π΅Ρ‚Ρƒ, взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΈΠΌ, Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ.

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ использования Β«ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΠ³ΠΎΒ» стиля Π±Π΅Π· смСны языка (COM/OLE, CORBA) выявили Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ трудности; собствСнно, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ цСлостноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этих трудностСй ΠΈ ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ»Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Java ΠΈ .Net [Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Java, Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, довольно извилиста; Π² Ρ€Π°Π·Π½ΠΎΠ΅ врСмя Ρƒ Sun Π±Ρ‹Π»ΠΎ мноТСство Ρ€Π°Π·Π½Ρ‹Ρ… вСрсий насчСт Β«Ρ‡Ρ‚ΠΎ это ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΎ Π½Π°Π΄ΠΎΒ». Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π½Π° сСгодняшний дСнь ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Java β€” Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ прямой ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ ΠΈ Π°Π½Π°Π»ΠΎΠ³ .Net.]. Π˜Ρ… свойства (богатая стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, автоматичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΆΠΈΠ·Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ Ρ‚. ΠΏ.) β€” прямой ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° Ρ‚Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ бросаСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ. Π§Ρ‚ΠΎ ΠΆΠ΅ касаСтся языков Java ΠΈ C# [Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .Net ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ многоязычна; Java, ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π±Ρ‹Π²ΡˆΠ°Ρ Β«ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка», сСгодня двиТСтся Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΌΡ‹-Ρ‚ΠΎ здСсь рассматриваСм Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ языков программирования], Ρ‚ΠΎ ΠΈΡ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈ Π΄Π°Π»Π° ΠΌΠ½Π΅ основания Π½Π°Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΡΡˆΠ΅Π΄ΡˆΠ΅Π΅ Β«Π²Ρ‚ΠΎΡ€ΠΎΠΉ большой чисткой»: ΠΊΠ°ΠΊ Π² своС врСмя C, эти языки ΡΡ‚Ρ€Π΅ΠΌΠΈΠ»ΠΈΡΡŒ Π²ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π² сСбя всС Β«Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ ΠΈΠ΄Π΅ΠΈΒ» своСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ Π²Π΄ΠΎΠ±Π°Π²ΠΎΠΊ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ наслСдствСнной слоТности, нСоднозначности ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, свойствСнных C++/Delphi/Visual Basic. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ вСрсии ΠΎΠ±ΠΎΠΈΡ… Π½ΠΎΠ²Ρ‹Ρ… языков Ρ‚Π°ΠΊΠΈ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊΠΎΠ², Π½ΠΎ дальнСйшСС Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ снова пошло ΠΏΠΎ спирали накоплСния возмоТностСй ΠΈ впитывания ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ. БСгодняшний C# β€” слоТный, Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΉ ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык; Java β€” консСрвативнСС Π² своСм стрСмлСнии ΠΊ простотС ΠΈ однозначности, Π½ΠΎ постСпСнно подбираСтся ΠΊ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠ»Π°Π½ΠΊΠ΅.

Заполняя пропуски: ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ

НСкоторыС языки программирования, Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ «классицизму», Π½ΠΎ Π½Π΅ попавшиС Π² ΡΡ‚Π°Ρ‚ΡŒΡŽ, вСсьма достойны упоминания β€” хотя Π±Ρ‹ совсСм ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ³ΠΎ.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ языки β€” Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ истории развития срСдств написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ; Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ всСобщая ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ обошла ΠΈΡ… стороной.

Π›ΠΈΠ½Π΅ΠΉΠΊΠ° Pascal. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‚ Паскаль, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ стал популярным Π² Ρ€ΡƒΠΊΠ°Ρ… Ρ„ΠΈΡ€ΠΌΡ‹ Borland ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· нас ΡƒΡ‡ΠΈΠ»ΠΈ Π² школС, ΠΎΡ‚ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ-чистой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Никлауса Π’ΠΈΡ€Ρ‚Π° отличаСтся довольно сильно, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ ΡΡƒΡ‚ΡŒ этого отличия Β«ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽΒ», Π΄Ρ€ΡƒΠ³ΠΈΠ΅ β€” ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Π³Ρ€ΡΠ·ΡŒΡŽ. Π‘Π°ΠΌ Π’ΠΈΡ€Ρ‚ придСрТиваСтся послСднСго мнСния; Π±ΡƒΠ΄ΡƒΡ‡ΠΈ нСвысокого мнСния ΠΎ цСлостности ΠΈ чистотС Π²ΠΎΠΎΠ±Ρ‰Π΅ всСх ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… языков, Π’ΠΈΡ€Ρ‚ ΠΈ Π΅Π³ΠΎ ΡƒΡ‡Π΅Π½ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ нСсколько своих, «чистых ΠΈ красивых» (Oberon, Modula, Zonnon).

Eiffel. Π‘ΡƒΠ΄ΡŒΠ±Π° Π­ΠΉΡ„Π΅Π»Π΅ΠΉ ΠΈ ΠΈΡ… создатСля Π‘Π΅Ρ€Ρ‚Ρ€Π°Π½Π° ΠœΠ΅ΠΉΠ΅Ρ€ΡΠ° ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° ΡΡƒΠ΄ΡŒΠ±Ρƒ «настоящих ПаскалСй». ΠœΠ΅ΠΉΠ΅Ρ€Ρ, ΠΊΠ°ΠΊ ΠΈ Π’ΠΈΡ€Ρ‚, достаточно Π°ΠΌΠ±ΠΈΡ†ΠΈΠΎΠ·Π΅Π½ Π² ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ своих ΠΈΠ΄Π΅ΠΉ (Π² основном β€” ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ), называя ΠΈΡ… «СдинствСнно ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈΒ»; распространСн Eiffel Π½Π΅ΡˆΠΈΡ€ΠΎΠΊΠΎ, влияниС Π΅Π³ΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎ.

Ada. НаконСц, создатСли самых Ρ€Π°Π·Π½Ρ‹Ρ… языков программирования срСди Β«Π²Π΄ΠΎΡ…Π½ΠΎΠ²Π»ΡΡŽΡ‰ΠΈΡ…Β» Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ язык Ada, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² 80-Ρ… ΠΏΠΎΠ΄ руководством ΠŸΠ΅Π½Ρ‚Π°Π³ΠΎΠ½Π°. Π’ ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ смыслС ΠΎΠ½ Π±Ρ‹Π» Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ PL/I (Π½Π΅ слишком удачная ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ языкС), Π½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ элСмСнты Ada (Π² частности, Π΅Π΅ систСма Ρ‚ΠΈΠΏΠΎΠ²) ΠΎΠΊΠ°Π·Π°Π»ΠΈ большоС влияниС Π½Π° ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² Π΄Ρ€ΡƒΠ³ΠΈΡ… языков.

Π˜Ρ‚ΠΎΠ³ΠΈ: Π·Π°Π²Ρ‚Ρ€Π° Π±Ρ‹Π»Π° Π²ΠΎΠΉΠ½Π°

Π­Π²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½Π½ΠΎ Π½Ρ‹Π½Π΅ΡˆΠ½ΠΈΠ΅ Β«Π³Π»Π°Π²Π½Ρ‹Π΅ языки» ΡƒΡˆΠ»ΠΈ бСсконСчно Π΄Π°Π»Π΅ΠΊΠΎ ΠΎΡ‚ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ². НакоплСниС ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌ ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² (Π° Ρ€Π°Π²Π½ΠΎ ΠΈ сниТСниС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ «простой ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Β», которая Π»Π΅ΠΆΠΈΡ‚ Π² основС ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ программирования) практичСски исчСрпало ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π» «классичСского», структурно-ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ взгляда Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½Ρ‹Ρ… прилоТСниях узнаСтся с Ρ‚Ρ€ΡƒΠ΄ΠΎΠΌ. Π§Ρ‚ΠΎ ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ Π΅ΠΌΡƒ Π½Π° смСну? β€” этот вопрос ΠΌΡ‹ пытаСмся Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ‚Π΅ΠΌΡ‹.

Заполняя пропуски: Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΈ Π΅Ρ‰Π΅ нСсколько языковых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π²ΠΏΠΎΠ»Π½Π΅ классицистичСских, Π²ΠΏΠΎΠ»Π½Π΅ ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Ρ…, Π½ΠΎ стоящих слСгка Π½Π° ΠΎΡ‚ΡˆΠΈΠ±Π΅ ΠΎΡ‚ Β«Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ историчСского Π²Π΅ΠΊΡ‚ΠΎΡ€Π°Β».

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, это юниксовский sh ΠΈ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ (bash, ksh, csh ΠΈ Π΄Π°Π»Π΅Π΅ со всСми остановками). ΠŸΠ΅Ρ€Π²Ρ‹Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ *nix-систСм Π²Π΅Π΄ΡƒΡ‚ свой Ρ€ΠΎΠ΄ ΠΎΡ‚ Алгола; юниксовский ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ объСдинСнию ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ считаСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. Π‘Ρ€Π΅Π΄ΠΈ ΠΎΡ‚Π΄Π°Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ² sh β€” ΠΊΠ°ΠΊ постмодСрнистский Perl (ΠΎ Π½Π΅ΠΌ ΠΌΡ‹ Π΅Ρ‰Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ), Ρ‚Π°ΠΊ ΠΈ бСзусловно классицистичСский Tcl (Π° ΠΎ Π½Π΅ΠΌ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ).

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, язык Π²Π΅Π±-программирования PHP β€” Ρ‚ΠΎΠΆΠ΅ Π²ΠΏΠΎΠ»Π½Π΅ популярСн ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ классицистичСн. Π•Π³ΠΎ часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ срСди наслСдников Perl, Π½ΠΎ ΠΎΡ‚ послСднСго PHP пСрСнял Π² основном способ имСнования ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния; Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ PHP β€” это ΠΏΠΎΡ‡Ρ‚ΠΈ чистый C (Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ ΠΈΠΌΠ΅Π½ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ). НСбывалый успСх PHP β€” это успСх Π½Π΅ языка программирования (часто ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π·Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΡƒΡ€ΠΎΠ΄Π»ΠΈΠ²ΠΎΡΡ‚ΡŒ), Π° успСх ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ для Π»Π΅Π³ΠΊΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π°ΠΊ ΠΈ повСлось.

Π₯Ρ€ΠΎΠ½ΠΈΠΊΠΈ чистого Ρ€Π°Π·ΡƒΠΌΠ°

Автор: Π’ΠΈΠΊΡ‚ΠΎΡ€ Π¨Π΅ΠΏΠ΅Π»Π΅Π²

Π˜ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° программирования («сдСлай Ρ‚ΠΎ; ΠΏΠΎΡ‚ΠΎΠΌ сдСлай это; Ссли А, сдСлай Π‘Β») Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ СстСствСнна для соврСмСнного ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Π½ΠΎ ΠΈ Π»Π΅Π³ΠΊΠΎ воспринимаСтся Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ: простыС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языках Π²Ρ€ΠΎΠ΄Π΅ Паскаля Π±Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° ΠΏΠΈΡˆΡƒΡ‚ ΠΈ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ пятиклассники. Но такая Β«Π΅ΡΡ‚Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒΒ» ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ β€” СдинствСнно Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ.

ДСсятоС [Π”Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅Ρ‚] ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Гринспуна

β€¦Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сам Common Lisp.

БлСдствиС ΠœΠΎΡ€Ρ€ΠΈΡΠ°

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²ΠΎ всСх областях чСловСчСского знания сущСствуСт Π½Π΅ΠΊΠΈΠΉ «СстСствСнный», «самоочСвидный» ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ (ΠΎΡ‚ ΡƒΠΆΠ΅ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ помянутого Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π½ΠΎΠ³ΠΎ классицизма Π΄ΠΎ Π»Π΅Ρ‚Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π°, ΠΌΠ°ΡˆΡƒΡ‰Π΅Π³ΠΎ ΠΊΡ€Ρ‹Π»ΡŒΡΠΌΠΈ). Но ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ развития ΠΈ взрослСния чСловСчСского ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ этой области появлялись Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Β«ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Ρ‚ΡŒΒ», ΠΆΠ΅Ρ€Ρ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Β«Π΅ΡΡ‚Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠΎΠ½ΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽΒ» Ρ€Π°Π΄ΠΈ «чистого искусства», ΠΈΠ»ΠΈ «идСологичСской стройности», ΠΈΠ»ΠΈ «практичСской нСобходимости». Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈΡΡŒ Π΄Π°ΠΆΠ΅ СдинствСнно Π²Π΅Ρ€Π½Ρ‹ΠΌΠΈ (Β«Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚, Π»Π΅Ρ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠ°ΠΊ ΠΏΡ‚ΠΈΡ†Π°Β» Ρ‚Π°ΠΊ ΠΈ Π½Π΅ Π±Ρ‹Π» построСн, Π° «противоСстСствСнныС» самолСты, Π²Π΅Ρ€Ρ‚ΠΎΠ»Π΅Ρ‚Ρ‹ ΠΈ Π΄ΠΈΡ€ΠΈΠΆΠ°Π±Π»ΠΈ β€” поТалуйста).

Если ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Π³ΠΎΠ»ΡƒΡŽ идСю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹-ΠΊΠ°ΠΊ-тСкста ΠΈ программирования-ΠΊΠ°ΠΊ-творчСства, ΠΎΡ‚Π²Π»Π΅ΠΊΠ°ΡΡΡŒ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΏΠ΅Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Ρ‚ΠΎ «всС это Π½Π°Π΄ΠΎ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹Β», Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ ΠΊ нСскольким Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ модСлям Ρ€Π°Π·Π½ΠΎΠΉ стСпСни абстрактности. Π›ΡŽΠ±Π°Ρ ΠΈΠ· Π½ΠΈΡ… ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Π½Π° Тизнь ΠΈ, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ воспринятой, Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Β«ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹Π΅ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Ρ‹ восприятия». ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ языков программирования, исходящих ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… Π²ΠΎΡ‚ «абстрактных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉΒ» ΠΈ ΠΎΡ‚Ρ‚ΠΎΠ³ΠΎ совсСм Π½Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈΡ… ΠΈ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°, ΠΈ Π½Π° Π»ΠΈΠ½Π΅ΠΉΠΊΡƒ Fortran-C-Java, β€” Π²Π°Π³ΠΎΠ½ ΠΈ малСнькая Ρ‚Π΅Π»Π΅ΠΆΠΊΠ°.

ПоявлСниС Ρ‚Π°ΠΊΠΈΡ… языков часто ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ Ρ†Π΅Π»Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ тСчСния Π² Β«ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-ΠΊΠ°ΠΊ-искусствС» β€” соратников, нСнавистников, эпигонов ΠΈ экспСримСнтаторов; Π½ΠΎ Π΄ΠΎ ΠΏΠΎΡ€Ρ‹ Π΄ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ эти тСчСния ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ Π΄Π°Π»Π΅ΠΊΠΈ ΠΎΡ‚ Β«ΡˆΠΈΡ€ΠΎΠΊΠΈΡ… масс». Π”Π°Π»ΡŒΡˆΠ΅ ΠΌΡ‹ пройдСмся с ΡˆΠΈΡ€ΠΎΠΊΠΎΠΉ ΡΠ΅Ρ‚ΡŒΡŽ ΠΏΠΎ самым Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΌ ΠΈΠ· Π½ΠΈΡ….

Π’Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡƒΡ€Π°Ρ†ΠΊΠΈΡ… скобок [Lot of silly parenthesis β€” Β«ΠΊΡƒΡ‡Π° Π³Π»ΡƒΠΏΡ‹Ρ… скобок» β€” старинная ΡˆΡƒΡ‚ΠΎΡ‡Π½Π°Ρ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° названия языка Lisp]

Lisp (1958) построСн Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΈΠ΄Π΅ΠΈ «всё Π΅ΡΡ‚ΡŒ список». Всё β€” здСсь Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ всё, Π² Ρ‚ΠΎΠΌ числС ΠΈ сама ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°: Lisp Π·Π°Π»ΠΎΠΆΠΈΠ» основы восприятия ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊΠ°ΠΊ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сама ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. ΠžΡ‚ΡΡŽΠ΄Π° β€” бСсконСчно Π³ΠΈΠ±ΠΊΠΈΠΉ синтаксис, ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ Π²ΠΎ Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ синтаксичСских макросов, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ²ΡˆΠΈΠΉ идСю «языков Π²Π½ΡƒΡ‚Ρ€ΠΈ языка» (ΡƒΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡) ΠΈ ΡΠΏΠΎΡΠΎΠ±ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΡŽ Ρƒ лиспСров взгляда свысока β€” Β«Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ваш язык программирования, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π° макросах Π½Π΅ сдСлаСм?Β». ΠžΡ‚ΡΡŽΠ΄Π° ΠΆΠ΅, ΠΈΠ· Лиспа, тянСтся Π½ΠΈΡ‚ΠΎΡ‡ΠΊΠ° (Ρ†Π΅Π»Ρ‹ΠΉ ΠΊΠ°Π½Π°Ρ‚) ΠΊ идСям Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования (см. Π½ΠΈΠΆΠ΅).