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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 30

Автор Π‘Π΅Ρ€Ρ‚Ρ€Π°Π½ ΠœΠ΅ΠΉΠ΅Ρ€

ВсС это, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ лишь Π΄Π²Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования, Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Π˜Π·ΠΌΠ΅Π½Ρ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ Π’ΠΈΠΏΠΎΠ², ΠΈ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ содСйствиС Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Ρ‚Ρ€Π΅Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ - Π˜Π·ΠΌΠ΅Π½Ρ‡ΠΈΠ²ΠΎΡΡ‚ΠΈ Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, НСзависимости ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠΉ ΠΈ Π€Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠžΠ±Ρ‰Π΅Π³ΠΎ ПовСдСния. Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π² частности, нСдостаточна для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π€Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ опрСдСляСт лишь Π΄Π²Π° уровня. Π£ нас появляСтся ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ для ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½ΠΎ нСпосрСдствСнно Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΉ. На Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€ΠΎΠ΄ΠΎΠ²Ρ‹Π΅ пороТдСния, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹Π΅ для нСпосрСдствСнного примСнСния, Π½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ для Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ Π½Π΅ позволяСт ΡƒΠ»ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ½ΠΊΠΈΠ΅ различия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ прСдставлСниями Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠ±Ρ‰Π΅ΠΉ ΠΈΠ΄Π΅ΠΈ.

Π§Ρ‚ΠΎ касаСтся НСзависимости ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠΉ, Ρ‚ΠΎ здСсь ΠΌΡ‹ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΠ»ΠΈΡΡŒ. Ни ΠΎΠ΄ΠΈΠ½ ΠΈΠ· рассмотрСнных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² - Π½Π΅ считая Π±Π΅Π³Π»ΠΎΠ³ΠΎ знакомства с сСмантичСской ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ - Π½Π΅ позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ рСализациями Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ понятия, Π½Π΅ имСя свСдСний ΠΎ Ρ‚ΠΎΠΌ, какая рСализация Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ случаС.

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этих ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π½Π°ΠΌ понадобится вся ΠΌΠΎΡ‰ΡŒ ОО-ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ

[x]. Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π°ΡΡΡ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ частоС использованиС ΠΎΠ±Ρ‰ΠΈΡ… ΠΎΠ±Ρ€Π°Π·Ρ†ΠΎΠ² (common patterns). Но ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ сущСствСнныС Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‚ΡΡ эти ΠΎΠ±Ρ€Π°Π·Ρ†Ρ‹, Ρ‚Π°ΠΊ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΠΈΡΡ Π² Π½Π°Π»ΠΈΡ‡ΠΈΠΈ, тСрпят Π½Π΅ΡƒΠ΄Π°Ρ‡Ρƒ.

[x]. ΠŸΡ€ΠΈ практичСском Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ экономичСскиС, психологичСскиС ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. ПослСдниС связаны, Π² частности, с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ создания ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² индСксации, хранСния ΠΈ поиска большого числа ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Π‘ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ тСхничСскиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹: общСпринятыС прСдставлСния ΠΎ модулях нСдостаточны для ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования.

[x]. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈ осущСствлСнии ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования являСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС с Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒΡŽ. Π”ΠΈΠ»Π΅ΠΌΠΌΠ° - "ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Ρ‚ΡŒ" Π½Π΅ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠ°. Π₯ΠΎΡ€ΠΎΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΈ свойства ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ модуля ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

[x]. ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹: ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС пСрсонала, ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС исходного ΠΊΠΎΠ΄Π°, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ успСху, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ достоинства ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования.

[x]. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΌ для ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования, являСтся абстрактный ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΡΡ†ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ интСрфСйса.

[x]. ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π»ΡƒΡ‡ΡˆΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° инкапсуляции, Ρ‡Π΅ΠΌ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Π½ΠΈΡ… ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ структура Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ связанныС с Π½Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

[x]. Π”Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²: ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

[x]. ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ являСтся синтаксичСским срСдством, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования, Π½ΠΎ затрудняСт Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ тСкстов ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

[x]. Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ способствуСт ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌΡƒ использованию, Π½ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ лишь ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ измСнчивости Ρ‚ΠΈΠΏΠΎΠ².

[x]. Π§Ρ‚ΠΎ ΠΆΠ΅ Π½Π°ΠΌ трСбуСтся: Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π°Ρ поставщику ΡƒΡ‡Π΅ΡΡ‚ΡŒ ΠΎΠ±Ρ‰Π½ΠΎΡΡ‚ΡŒ Π² Π³Ρ€ΡƒΠΏΠΏΠ°Ρ… взаимосвязанных Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ структур Π΄Π°Π½Π½Ρ‹Ρ…; ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°, ΠΈΠ·Π±Π°Π²Π»ΡΡŽΡ‰Π°Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΎΡ‚ нСобходимости Π·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±Ρ€Π°Π½ поставщиком.

БиблиографичСскиС замСчания

ΠŸΠ΅Ρ€Π²Π°Ρ публикация, ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‰Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования, упомянутая Π² Π½Π°Ρ‡Π°Π»Π΅ этой Π»Π΅ΠΊΡ†ΠΈΠΈ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚, ΠΏΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ, Мак-Π˜Π»Ρ€ΠΎΡŽ (McIlroy's 1968 Mass-Produced Software Components). Π•Π³ΠΎ ΡΡ‚Π°Ρ‚ΡŒΡ [McIlroy 1976] Π±Ρ‹Π»Π° прСдставлСна Π² 1968 Π³. Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО, созванной ΠšΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΎΠΌ НАВО ΠΏΠΎ Π½Π°ΡƒΠΊΠ΅ (NATO Science Affairs Committee). 1976 Π³. это Π΄Π°Ρ‚Π° издания Ρ‚Ρ€ΡƒΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ, [Buxton 1976], публикация ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»Π° Π·Π°Π΄Π΅Ρ€ΠΆΠ°Π½Π° Π½Π° нСсколько Π»Π΅Ρ‚. Мак-Π˜Π»Ρ€ΠΎΠΉ ΠΏΡ€ΠΎΠΏΠ°Π³Π°Π½Π΄ΠΈΡ€ΠΎΠ²Π°Π» Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠ³ΠΎ производства ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ПО.

Π’ΠΎΡ‚ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Π΅Π³ΠΎ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

"ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡ‚Π²ΠΎ ПО Π² наши Π΄Π½ΠΈ оказываСтся ΠΏΠΎ ΡƒΡ€ΠΎΠ²Π½ΡŽ индустриализации Π½ΠΈΠΆΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ отсталых отраслСй ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΡΡ‚ΠΈ. Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅Π΅ мСсто Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΡˆΠ΅, ΠΈ Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ пСрспСктивы Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² массового производства ПО ...

Когда ΠΌΡ‹ бСрСмся Π·Π° написаниС компилятора, Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ с вопроса: "Какой ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ?". А слСдуСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ вопрос: "Какой ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?" ...

Π― Π²Ρ‹Π΄Π²ΠΈΠ³Π°ΡŽ тСзис ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ индустрии ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ слабая основа отчасти Π² связи с отсутствиСм подотрасли производства ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²... Π’Π°ΠΊΠΎΠ΅ производство ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ Π±Ρ‹Ρ‚ΡŒ вСсьма ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΌ."


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

НаиболСС Π²Π°ΠΆΠ½ΠΎΠΉ характСристикой индустрии ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ПО являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ сСмСйства [ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ] для выполнСния Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π’ тСкстС Мак-Π˜Π»Ρ€ΠΎΡ использовалось слово "ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°" (routine), Π° Π½Π΅ "ΠΌΠΎΠ΄ΡƒΠ»ΡŒ"; Π² свСтС обсуТдСния, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π² этой Π»Π΅ΠΊΡ†ΠΈΠΈ, этот Ρ‚Π΅Ρ€ΠΌΠΈΠ½ являСтся - с рСтроспСктивным ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚Ρ€ΠΈΠ΄Ρ†Π°Ρ‚ΠΈ Π»Π΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО - слишком ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ выпуск Transactions on Software Engineering, ΠΈΠ·Π΄Π°Π½Π½Ρ‹ΠΉ БиггСрстафом ΠΈ ΠŸΠ΅Ρ€Π»ΠΈΡΠΎΠΌ (Biggerstaff and Perlis) [Biggerstaff 1984], сыграл Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠΈ внимания сообщСства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ПО ΠΊ вопросам ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования; смотритС Π² частности, Π² этом выпускС, ΡΡ‚Π°Ρ‚ΡŒΠΈ [Jones 1984], [Horowitz 1984], [Curry 1984], [Standish 1984] ΠΈ [Goguen 1984]. Π’Π΅ ΠΆΠ΅ ΠΈΠ·Π΄Π°Ρ‚Π΅Π»ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ всС эти ΡΡ‚Π°Ρ‚ΡŒΠΈ (ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹Ρ…) Π² Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Π΄Π²ΡƒΡ…Ρ‚ΠΎΠΌΠ½Ρ‹ΠΉ сборник [Biggerstaff 1989]. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ сборником статСй ΠΏΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌΡƒ использованию являСтся [Tracz 1988]. ПозТС Π’Ρ€Π°Ρ‡ (Tracz) собрал ряд своих ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΈΠ· IEEE Computer Π² ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ [Tracz 1995], Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ особоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ придаСтся ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ вопросам.

Один ΠΈΠ· ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌΡƒ использованию, основанный Π½Π° идСях искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π°, Π²ΠΎΠΏΠ»ΠΎΡ‰Π΅Π½ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠœΠ°ΡΡΠ°Ρ‡ΡƒΡΠ΅Ρ‚ΡΠΊΠΎΠ³ΠΎ тСхнологичСского института ΠΏΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ программистов (MIT Programmer's Apprentice project); смотритС ΡΡ‚Π°Ρ‚ΡŒΠΈ [Waters 1984] and [Rich 1989], воспроизвСдСнныС Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΌ сборниках БиггСрстафа-ΠŸΠ΅Ρ€Π»ΠΈΡΠ°, соотвСтствСнно. Π­Ρ‚Π° систСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π½Π΅ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, Π° ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ (Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ cliches and plans), ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΠ±Ρ‰ΠΈΠ΅ стратСгии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΈ обсуТдСнии вопроса ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°Ρ… ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈΡΡŒ Ρ‚Ρ€ΠΈ "языка с инкапсуляциСй": Ada, Modula-2 ΠΈ CLU. Π―Π·Ρ‹ΠΊ Ada обсуТдаСтся Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π»Π΅ΠΊΡ†ΠΈΠΉ, библиографичСский Ρ€Π°Π·Π΄Π΅Π» ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ содСрТит ссылки Π½Π° языки Modula-2, CLU, Π° Ρ‚Π°ΠΊΠΆΠ΅ Mesa and Alphard, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π΄Π²Π° послСдних языка с инкапсуляциСй ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ "ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠΌΡƒ поколСнию" сСмидСсятых ΠΈ Π½Π°Ρ‡Π°Π»Π° Π²ΠΎΡΡŒΠΌΠΈΠ΄Π΅ΡΡΡ‚Ρ‹Ρ… Π³ΠΎΠ΄ΠΎΠ² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ°. Π­ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π² языкС Alphard Π±Ρ‹Π» Π½Π°Π·Π²Π°Π½ Ρ„ΠΎΡ€ΠΌΠΎΠΉ (form).

Π’Π°ΠΆΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ STARS ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²Π° ΠΎΠ±ΠΎΡ€ΠΎΠ½Ρ‹ БША Π²ΠΎΡΡŒΠΌΠΈΠ΄Π΅ΡΡΡ‚Ρ‹Ρ… Π³ΠΎΠ΄ΠΎΠ² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ° Π±Ρ‹Π» Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования, особСнно Π½Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… аспСктах этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π² качСствС языка для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ПО использовался язык Ada. Ряд статСй ΠΏΠΎ этим вопросам ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Ρ‚Ρ€ΡƒΠ΄Π°Ρ… ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ STARS DoD-Industry 1985 Π³. [NSIA 1985].

Двумя Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстными ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ ΠΏΠΎ "ΠΎΠ±Ρ€Π°Π·Ρ†Π°ΠΌ (шаблонам) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²" ΡΠ²Π»ΡΡŽΡ‚ΡΡ [Gamma 1995] ΠΈ [Pree 1994].

Π Π°Π±ΠΎΡ‚Π° [Weiser 1987] являСтся ΠΏΡ€ΠΈΠ·Ρ‹Π²ΠΎΠΌ ΠΊ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ ПО Π² Π²ΠΈΠ΄Π΅ исходных тСкстов. Однако Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ нСдооцСниваСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ абстракции; ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² этой Π»Π΅ΠΊΡ†ΠΈΠΈ, ΠΏΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ доступа ΠΊ исходному тСксту, Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ Π² качСствС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ модуля. Из Π΄Ρ€ΡƒΠ³ΠΈΡ… сообраТСний Π ΠΈΡ‡Π°Ρ€Π΄ Π‘Ρ‚Π°Π»Π»ΠΌΠ°Π½ (Richard Stallman), ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ Π›ΠΈΠ³ΠΈ Π‘Ρ‚ΠΎΡ€ΠΎΠ½Π½ΠΈΠΊΠΎΠ² Π‘Π²ΠΎΠ±ΠΎΠ΄Ρ‹ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ (League for Programming Freedom), ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π», Ρ‡Ρ‚ΠΎ прСдставлСниС Π² Π²ΠΈΠ΄Π΅ исходного тСкста всСгда Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ доступно; смотритС [Stallman 1992].

Π’ Ρ€Π°Π±ΠΎΡ‚Π΅ [Cox 1992] описываСтся идСя супСрпоставки (superdistribution) НСкоторая Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ имСлась Π² языкС Algol 68 [van Wijngaarden 1975]; Π² языках Ada (Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ это распространСно Π½Π° ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹), C++ ΠΈ Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… лСкциях, этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ (genericity) появляСтся Π² языках Ada ΠΈ CLU, ΠΈ Π² Ρ€Π°Π½Π½Π΅ΠΉ вСрсии языка спСцификаций Z [Abrial 1980]; Π² этой вСрсии синтаксис Z Π±Π»ΠΈΠ·ΠΎΠΊ ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌΡƒ для прСдставлСния ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² этой ΠΊΠ½ΠΈΠ³Π΅. Π―Π·Ρ‹ΠΊ LPG [Bert 1983], Π±Ρ‹Π» явно ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для исслСдования ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. (НазваниС этого языка являСтся Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ ΠΈΠ· Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π±ΡƒΠΊΠ² "Language for Programming Generically".)