Π―Π·Ρ‹ΠΊΡƒ Python исполнилось 30 Π»Π΅Ρ‚

20 фСвраля 1991 Π³ΠΎΠ΄Π° Π“Π²ΠΈΠ΄ΠΎ Π²Π°Π½ Россум ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ alt.sources ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ выпуск языка программирования Python, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π» с дСкабря 1989 Π³ΠΎΠ΄Π° Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎ созданию скриптового языка для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ систСмного администрирования Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Amoeba, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π±Ρ‹ Π±ΠΎΠ»Π΅Π΅ высокого уровня, Ρ‡Π΅ΠΌ Π‘ΠΈ, Π½ΠΎ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Bourne shell, прСдоставлял Π±Ρ‹ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ доступ ΠΊ систСмным Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ ОБ.

Имя для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±Ρ‹Π»ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ Π² Ρ‡Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠœΠΎΠ½Ρ‚ΠΈ ΠŸΠ°ΠΉΡ‚ΠΎΠ½ (Monty Python). Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ вСрсии Π±Ρ‹Π»Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° классов с наслСдованиСм, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, систСма ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ list, dict ΠΈ str. РСализация ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π±Ρ‹Π»Π° заимствована ΠΈΠ· языка Modula-3, Π° ΡΡ‚ΠΈΠ»ΡŒ кодирования Π½Π° основС отступов ΠΈΠ· языка ABC, Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π“Π²ΠΈΠ΄ΠΎ Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π» участиС.

Π’ процСссС создания Python Π“Π²ΠΈΠ΄ΠΎ руководствовался ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ:

  • ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅:
    • ЗаимствованиС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΈΠ΄Π΅ΠΉ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².
    • Π‘Ρ‚Ρ€Π΅ΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΊ простотС, Π½ΠΎ Π±Π΅Π· Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ упрощСния (ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ЭйншСйна «Π’ΡΡ‘ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΎ Ρ‚Π°ΠΊ просто, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π½Π΅ ΠΏΡ€ΠΎΡ‰Π΅»).
    • Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ философии UNUX, Π² соотвСтствии с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ ΠΎΠ΄Π½Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ это Ρ…ΠΎΡ€ΠΎΡˆΠΎ.
    • НС слишком Π·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ понадобятся.
    • НС ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с слоТившимися Π²Π΅Ρ‰Π°ΠΌΠΈ, Π° ΠΏΠ»Ρ‹Ρ‚ΡŒ ΠΏΠΎ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΡŽ.
    • Π˜Π·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Ρ„Π΅ΠΊΡ†ΠΈΠΎΠ½ΠΈΠ·ΠΌΠ°, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΈ уровня «Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ».
    • Иногда ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π΅Π·Π°Ρ‚ΡŒ ΡƒΠ³Π»Ρ‹, особСнно, Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠ·Π΄Π½Π΅Π΅.
  • ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹:
    • РСализация Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ привязана ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. НСкоторыС возмоТности ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ доступны Π½Π΅ всСгда, Π½ΠΎ базовая Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π²Π΅Π·Π΄Π΅.
    • НС Π½Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ дСталями, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π·ΡΡ‚ΡŒ Π½Π° сСбя машина.
    • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ платформонСзависимого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π½ΠΎ Π±Π΅Π· ограничСния доступа ΠΊ возмоТностям ΠΈ особСнностям ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ.
    • Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ слоТныС систСмы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ нСсколько ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.
    • Ошибки Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ Π½Π΅Π·Π°ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ — ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ошибки.
    • Ошибки Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌΡƒ повСдСнию ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° ΠΈ ΠΊΡ€Π°Ρ…Ρƒ процСссов.

    Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru