Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ языков программирования Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ обучСния Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π‘Ρ€Π°Π²Π½ΠΈΡ‚ΡŒ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ написанных Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языках ΠΈ запускаСмых Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго интСрСсны для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ связанных с нСйросСтями.

Π–Π΅Π»Π΅Π·ΠΎ ΠΈ ОБ

Для тСстирования ΠΏΠΎ Ubuntu ΠΈ Windows ( Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ DELL Inspiron-7577):

CPU: Intel Core i7-7700HQ @ 8x 3.8GHz

рис. 1 (Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ screenfetch Π½Π° Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ΅ DELL Inspiron-7577 ΠΏΠΎΠ΄ ОБ Ubuntu)

Для тСстирования Π½Π° ΠΏΠΎΠ΄ MAC:

CPU: Intel Core i7 2.7GHz

Π’Π°ΠΊ-ΠΆΠ΅ ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ тСсты Π½Π° Raspberry pi 4:

CPU: ARMv7 rev 3 (v7l) @ 4x 1,5Ghz

рис. 2 (Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ screenfetch Π½Π° raspberry pi 4)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для тСстирования

Для провСдСния тСстов Π±Ρ‹Π»Π° написана ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΈΠ· 5 Π½Π΅ΠΉΡ€ΠΎΠ½ΠΎΠ², Ρ†Π΅Π»ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся научится ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ нахоТдСния ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΈΠ»ΠΈ с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ delta = 0.01. ВсС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ свойства нСйросСти, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ обучСния Π±Ρ‹Π»ΠΈ взяты ΠΈΠ· этих 2 постов:

ЕдинствСнныС измСнСния Π±Ρ‹Π»ΠΈ внСсСны Π² коэффицСнты E (эпсилон) β€” ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ обучСния, Ξ± (Π°Π»ΡŒΡ„Π°) β€” ΠΌΠΎΠΌΠ΅Π½Ρ‚ (E = 0.3, Ξ± = 0.5). ΠŸΡ€ΠΈ использовании Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π΅ΠΉΡ€ΠΎΡΠ΅Ρ‚ΡŒ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (8 Ρ‡.) Π½Π΅ ΠΌΠΎΠ³Π»Π° Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

По своСй структурС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСдставляСт ΠΈΠ· сСбя Π½Π΅ΠΊΡƒΡŽ ООП модСль, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ класс NeuronNet ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ массивами ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса Neuron ΠΈ Sinaps. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ класса Sinaps содСрТит Π² сСбС ссылки Π½Π° 2 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса Neuron. Для расчСтов с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ примСняСтся Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… double.

Алгоритм тСстирования:

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

рис. 3 (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° языкС Kotlin, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ ОБ Ubuntu)

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ тСстирования

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанныС Π½Π° Kotlin, Java, php, ruby ΠΈ Python Π΄Π°Π²Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ послС ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ сСта, Π²Ρ‹Π²ΠΎΠ΄ послС ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ сСта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° Π‘++ Π±Ρ‹Π» Π΄Ρ€ΡƒΠ³ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Π»Π΅ΠΊΠ»ΠΎ Π·Π° собой ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ количСства эпох ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΅ΠΉ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ для Π΄ΠΎΠ»ΠΆΠ½ΠΎΠ³ΠΎ обучСния. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ ΠΊΠ°ΠΊ сравнСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ всСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚Π°ΠΊ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ для прохоТдСния ΠΎΠ΄Π½ΠΎΠΉ эпохи.

ВрСмя обучСния [ΠΌc.]
UbuntuWindowsRaspbianMAC
Python104569204239521112335621
Kotlin49684877199637775
Java48925994179737652
Ruby7968490524457229
C++100990212000505377
php75591131170513996

Ρ‚Π°Π±. 1(врСмя прохоТдСния всСх эпох Π΄ΠΎ обучСния нСйросСти)

ВрСмя прохоТдСния ΠΎΠ΄Π½ΠΎΠΉ эпохи [ΠΌc.]
UbuntuWindowsRaspbianMAC
Python8713169424331527576
Kotlin3924051631625
Java3954851434635
Ruby6667756638040
C++4185883421057
php63811001243168

Ρ‚Π°Π±. 2(врСмя прохоТдСния ΠΎΠ΄Π½ΠΎΠΉ эпохи)

Анализ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ²

Π³Ρ€Π°Ρ„. 1 (врСмя прохоТдСния всСх эпох для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π½Π° ОБ Ubuntu)

Как ΠΈ оТидалось Kotlin ΠΈ Java ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ±ΠΎΠ³Π½Π°Π² Python ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π² 20 Ρ€Π°Π·. Рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ наблюдСния.

НСоТиданно ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌΠΈ оказались Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° C++. ΠžΡ‚Ρ‡Π°ΡΡ‚ΠΈ это ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ большим количСством эпох ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΅ΠΉ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ для нахоТдСния ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°. Однако Π΄Π°ΠΆΠ΅ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ этого (см Π³Ρ€Π°Ρ„. 2) ΠΎΠ½Π° отстаСт ΠΏΠΎ Π±Ρ‹ΡΡ‚Ρ€ΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ ΠΎΡ‚ Java ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π³Ρ€Π°Ρ„. 2 (врСмя прохоТдСния ΠΎΠ΄Π½ΠΎΠΉ эпохи для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π½Π° ОБ Ubuntu)

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ΅ использованиС рСсурсов процСссора (см рис. 4, рис. 5)

рис. 4 (Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΏΠΎΡ€Ρ‚Π° Ubuntu Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° Kotlin)

рис. 5 (Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΏΠΎΡ€Ρ‚Π° Ubuntu Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° C++)

Как ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Java Π΅Π΄ΠΈΠ½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 4 ядра, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° C++ β€” ΠΎΠ΄Π½ΠΎ. Однако, этим нСльзя ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ прСвосходство Π² скорости Π² 8 Ρ€Π°Π·, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Java Π½Π΅ задСйствуСт всС ядра Π½Π° 100%.

БущСствСнныС различия Π² скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° Python Π² зависимости ΠΎΡ‚ ОБ. ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Java Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ОБ различия Π² скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ составили Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 40% (Π΄Π°ΠΆΠ΅ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ raspberry), ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΡ‹ Π½Π° Python Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ значСния: Ubuntu β€” 104c, Windows β€” 204c, MAC β€” 335c. ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Kotlin ΠΊ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° Python составляСт 21 для ОБ Ubuntu, 26 для Raspberry ΠΈ Π°ΠΆ 43 для Mac.

ВсС ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ языки программирования ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Raspbery

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Β«Π”Π΅Π»ΠΎ Π±Ρ‹Π»ΠΎ Π²Π΅Ρ‡Π΅Ρ€ΠΎΠΌ, Π΄Π΅Π»Π°Ρ‚ΡŒ Π±Ρ‹Π»ΠΎ Π½Π΅Ρ‡Π΅Π³ΠΎΒ» ΠΈΠ»ΠΈ краткая история ΠΎ сравнСнии ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ языков программирования

«Π‘Π΅Π½Ρ‡» Π΄Π΅Π»ΠΎ Ρ‚Π°ΠΊΠΎΠ΅. ПослС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π½Π΅ΠΉ бСздСйствия начинаСтся Π»ΠΎΠΌΠΊΠ°, хочСтся Π·Π°Π½ΡΡ‚ΡŒ сСбя Ρ‡Π΅ΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ. Иногда я отвлСкался Π½Π° pet-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. БСйчас ΠΆΠ΅ я расскаТу ΠΎ Ρ‚ΠΎΠΌ Ρ‡Ρ‚ΠΎ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π²ΠΎ врСмя послСднСго «Ρ€Π΅ΠΆΠΈΠΌΠ° оТидания».

МСня ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ Π²ΠΎΠ»Π½ΠΎΠ²Π°Π»Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ЯП (Π² основном интСрСсовал PHP). Бписок Π½ΠΈΠΆΠ΅ содСрТал Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΈ убСТдСния, Π΄ΠΎ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ:

PHP ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… языков программирования

Python быстрСС PHP

C/C++ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ быстрСС Python ΠΈ PHP вмСстС взятых

Assembler Π½Π° порядок быстрСС C/C++

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

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

Π—Π° основу Π±Ρ‹Π» взят ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π°ΠΆΠ΅ Π½Π΅ прСкращаСтся, Ссли ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚ Ρ‡Ρ‚ΠΎ число Π½Π΅ простоС):

А дальшС всС ΠΊΠ°ΠΊ Π² Ρ‚ΡƒΠΌΠ°Π½Π΅: Python, C/C++, Pascal, Go ΠΈ Ρ‚Π΄. ВсС исходники ΠΌΠΎΠΆΠ½ΠΎ Π³Π»ΡΠ½ΡƒΡ‚ΡŒ здСсь. ВсС тСсты я Π΄Π΅Π»Π°Π» Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π·Π°ΡΠΎΡ€ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏ.

ΠŸΠΎΡ‚ΠΎΠΌ я наткнулся Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ АндрСя Π’ΠΈΠΊΡ‚ΠΎΡ€ΠΎΠ²ΠΈΡ‡Π° Бтолярова, ΠΈ всС Π·Π°Π²Π΅Ρ€Ρ‚Π΅Π»ΠΎΡΡŒ с Π΅Ρ‰Π΅ большСй силой. Assembler я Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π» со Π²Ρ€Π΅ΠΌΠ΅Π½ ΡƒΠ½ΠΈΠ²Π΅Ρ€Π°, Π½ΠΎ послС прочтСния ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡ‡Π΅Π½ΡŒ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ. ΠœΠΎΠ³Ρƒ сразу ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ тСст для Assembler/NASM я писал большС Π½Π΅Π΄Π΅Π»ΠΈ, хотя Π½Π° любой ЯП ΠΈΠ· Ρ‚Π΅Ρ… Ρ‡Ρ‚ΠΎ прСдставлСны Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΡƒΡ…ΠΎΠ΄ΠΈΠ»ΠΎ Π½Π΅ большС часа.

Π’ΠΎΡ‚ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹:

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Π»ΠΈ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, я удивлялся всС сильнСС ΠΈ сильнСС:

оказываСтся PHP быстрСС Python ΠΈ Ruby

PHP Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых быстрых ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языков

Python 3 ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Python 2

Ρ€Π°Π·Π½ΠΈΡ†Π° Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ написанной Π½Π° Π‘/C++ ΠΈ Assembler/NASM Π² Ρ€Π°ΠΉΠΎΠ½Π΅ 15%

послС Rust ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСсты с Ρ„Π»Π°Π³ΠΎΠΌ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ с ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ я ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽ постСпСнно Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ тСсты (ΠΊΠΎΠ³Π΄Π° позволяСт врСмя ΠΈ настроСниС).

ЦСль Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ стоит Π½Π΅ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ ЯП самый быстрый, Π° Π² Ρ‚ΠΎΠΌ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡˆΠΈΠ±Π°Ρ‚ΡŒΡΡ Π² своих убСТдСниях, ΠΈ Ρ‡Ρ‚ΠΎ Π½Π΅ стоит Π²Π΅Ρ€ΠΈΡ‚ΡŒ всСм Π±Π°ΠΉΠΊΠ°ΠΌ Π² ΠΊΡƒΡ€ΠΈΠ»ΠΊΠ΅ (ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΌΠΎΠΈΡ… Π·Π°Π±Π»ΡƒΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚Ρ‚ΡƒΠ΄Π°, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π³Π΄Π΅-Ρ‚ΠΎ ΡΠ»Ρ‹ΡˆΠ°Π» Ρ‡Ρ‚ΠΎ X быстрСС Y).

PPS. Π”ΠΎΠ±Π°Π²ΠΈΠ» Ruby 3, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ сильно ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ.

PPPS. ИзмСнил ΠΌΠ΅Ρ‚ΠΎΠ΄ подсчСта Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния, ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ» порядковый Π½ΠΎΠΌΠ΅Ρ€ простого числа (с 5000 Π½Π° 7000).

PPPPS. Π”ΠΎΠ±Π°Π²ΠΈΠ» Haskell.

PPPPPS. Π”ΠΎΠ±Π°Π²ΠΈΠ» Lua (LuaJIT) ΠΈ Python 2/3 (PyPy).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π›ΡƒΡ‡ΡˆΠΈΠΉ язык программирования

Вопрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто Π·Π°Π΄Π°ΡŽΡ‚ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ программисты β€” ΠΊΠ°ΠΊΠΎΠΉ язык программирования ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ? Вопрос Π·Π²ΡƒΡ‡ΠΈΡ‚ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ. Π₯очСтся Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ самый Π»ΡƒΡ‡ΡˆΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌ Π½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠ΅Ρ€Π΅ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ.

МоТно Π»ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ?

Π― Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ программистом Ρ‚Ρ€ΠΈΠ΄Ρ†Π°Ρ‚ΡŒ Π»Π΅Ρ‚. Π—Π° эти Π³ΠΎΠ΄Ρ‹ индустрия нСсколько Ρ€Π°Π· ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π²Π°Π»Π° ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ измСнСния. Π£ мСня Π±Ρ‹Π»ΠΈ Π»ΡŽΠ±ΠΈΠΌΡ‹Π΅ языки, Π½ΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ стал СдинствСнным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ Π½Π° Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя. И Π΄Π΅Π»ΠΎ Π½Π΅ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ я мСняю языки, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Ρ‡Π°Ρ‚ΠΊΠΈ. ΠœΠ΅Π½ΡΠ΅Ρ‚ΡΡ сама Тизнь.

Π’ ΠΊΠΎΠ½Ρ†Π΅ 90-Ρ… я писал Π½Π° Π‘++ ΠΈ присматривался ΠΊ Π²Π΅Π±Ρƒ. ΠŸΠΈΡΠ°Ρ‚ΡŒ Π²Π΅Π±-прилоТСния Π½Π° C++ Π±Ρ‹Π»ΠΎ Π±Π΅Π·ΡƒΠΌΠΈΠ΅ΠΌ. Π’ΠΎΠ³Π΄Π° Π½Π΅ Π±Ρ‹Π»ΠΎ Π½ΠΈ Python, Π½ΠΈ Ruby, Π½ΠΈ C#, ΠΈ Π΄Π°ΠΆΠ΅ PHP Π±Ρ‹Π» Π² Π·Π°Ρ‡Π°Ρ‚ΠΎΡ‡Π½ΠΎΠΌ состоянии. Π‘Π²ΠΎΠΈ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Π²Π΅Π±Π° я написал Π½Π° Perl. БСйчас ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Perl Π½Π°Π·ΠΎΠ²ΡƒΡ‚ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ ΠΈ Π±Π΅Π·ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΡ‡Π½ΠΎ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ.

ВсС Ρ‚Ρ€ΠΈΠ΄Ρ†Π°Ρ‚ΡŒ Π»Π΅Ρ‚ ΠΌΠ½Π΅ постоянно приходится ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ языки программирования. ΠŸΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΠΌΡƒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π»ΡŽΠ±ΠΎΠ·Π½Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΎ ΠΈ банальная ТизнСнная Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. БСгодня вострСбованы программисты Π½Π° Python, Go, C#, Java. Π’ΠΎ, Ρ‡Ρ‚ΠΎ я знаю язык АссСмблСра ΠΈ Delphi, Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΌΠ½Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½ΡƒΡŽ Π²Ρ‹ΡΠΎΠΊΠΎΠΎΠΏΠ»Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π’ индустрии ходят слухи ΠΎ баснословных Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π°Ρ… программистов Π½Π° COBOL. НС знаю. НС ΡƒΠ²Π΅Ρ€Π΅Π½. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ Π½Π° Go сСйчас Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π½ΡƒΠΆΠ½Π΅Π΅.

Если постоянно приходится ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ языки, Π·Π½Π°Ρ‡ΠΈΡ‚, Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ языка Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Π½Π΅ сущСствуСт. Π§Ρ‚ΠΎ ΠΆΠ΅ Ρ‚ΠΎΠ³Π΄Π° Π΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΌΡƒ программисту?

ΠžΡ‚Π²Π΅Ρ‚ β€” Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ быстро ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ языки. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΌΡ‹ΡΠ»ΡŒ, расскаТу ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ· ΠΆΠΈΠ·Π½ΠΈ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ языка Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ нСсколько Π΄Π½Π΅ΠΉ, ΠΈΠ½ΠΎΠ³Π΄Π° нСдСль, Π½ΠΎ C# я Π²Ρ‹ΡƒΡ‡ΠΈΠ» Π·Π° Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΡƒΡ‚.

Π― ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ писал Π½Π° C++, ΠΏΠΎΡ‚ΠΎΠΌ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ освоил Java ΠΈ, оказалось, Ρ‡Ρ‚ΠΎ всС основныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ C# Π±Ρ‹Π»ΠΈ ΠΌΠ½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹. Π—Π½Π°Ρ‚ΠΎΠΊΠ°ΠΌ C# напомню, Ρ‡Ρ‚ΠΎ Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΏΡ€ΠΎ 2003 Π³ΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° Π² языкС Π½Π΅ Π±Ρ‹Π»ΠΎ Π½ΠΈ LINQ, Π½ΠΈ async/await, Π½ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΠ±ΠΎΠ±Ρ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ программирования.

Π― ΠΎΡ‚ΠΊΡ€Ρ‹Π» MSDN, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π» нСсколько страниц, ΠΈ написал ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сразу ΡƒΡˆΡ‘Π» Π² ΠΏΡ€ΠΎΠ΄. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, я Π½Π΅ Π·Π½Π°Π» язык ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ β€” ΠΏΠ°Ρ€Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ освоСния. Π’ частности, Π½ΠΎΠ²ΠΎΠΉ для мСня оказалась концСпция Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΎΠ². Π’ C++ ΠΈ Java Π΅ΡΡ‚ΡŒ свои способы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с указатСлями Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Π° Π² C# для этого ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ Π½ΠΎΠ²ΠΎΠ΅ срСдство языка.

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

Π―Π·Ρ‹ΠΊΠΈ программирования ΠΏΠΎΡ…ΠΎΠΆΠΈ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. Они ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ Ρ†Π΅Π»Ρ‹Π΅ сСмСйства с ΠΎΠ±Ρ‰ΠΈΠΌΠΈ идСями, Π° ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π°ΠΆΠ΅ ΠΈ ΠΎΠ±Ρ‰ΠΈΠΌ синтаксисом. Π‘ΠΊΠ°ΠΆΠ΅ΠΌ, C++, Java ΠΈ C# ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΎ ΠΈ синтаксичСски.

Зная ΠΎΠ΄ΠΈΠ½ язык ΠΈΠ· сСмСйства, Π²Ρ‹ быстро Π½Π°Ρ‡Π½Ρ‘Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° родствСнном языкС, Π΄Π°ΠΆΠ΅ Ссли Ρƒ Π½Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ синтаксис. Π’ этом ΠΊΠ»ΡŽΡ‡ ΠΊ быстрому ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ языков.

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

БСмСйства языков

ΠœΡ‹ ступаСм Π½Π° Π½Π΅Ρ‚Π²Ρ‘Ρ€Π΄ΡƒΡŽ ΠΏΠΎΡ‡Π²Ρƒ классификаций. Π§Ρ‚ΠΎ Π±Ρ‹ я Π½ΠΈ написал, найдётся Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ, Π½Π΅ согласный с ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ критСриями. Π―, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΡŽ, ΠΈ Π½Π°Ρ‡Π½Ρƒ с ΠΎΠ±Ρ‰Π΅ΠΏΡ€ΠΈΠ·Π½Π°Π½Π½Ρ‹Ρ… ΡƒΡΡ‚ΠΎΡΠ²ΡˆΠΈΡ…ΡΡ способов Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ языки Π½Π° Π³Ρ€ΡƒΠΏΠΏΡ‹.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠΈ, самая ранняя классификация касаСтся ΠΏΠ΅Ρ€Π²Ρ‹Ρ… языков программирования высокого уровня β€” Fortran ΠΈ LISP. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… Π±Ρ‹Π» ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ состоял ΠΈΠ· ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²ΠΎΠ². Π‘Π»ΠΎΠ²ΠΎ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ² Π² русском языкС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π΅Π΄ΠΊΠΎ, Π½Π°ΠΌ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Π΅Π΅ слово ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ языкС программирования β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выполняСт ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ β€” LISP β€” ΠΏΠΎΠ»ΠΎΠΆΠΈΠ» Π½Π°Ρ‡Π°Π»ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ языкам. ВмСсто ΠΊΠΎΠΌΠ°Π½Π΄ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ чистыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‚ Π² Ρ‡ΡƒΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π΅, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ β€” Π² Π΅Ρ‰Ρ‘ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅. Π’ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ счётС, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌ языкС β€” это ΠΎΠ΄Π½Π° большая функция, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΈ вычисляСт.

К ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ языкам, ΠΏΠΎΠΌΠΈΠΌΠΎ Fortran, ΠΌΠΎΠΆΠ½ΠΎ отнСсти Pascal, C, C++, Java, C#, Python, Go. К Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ β€” Haskell, Scala, Erlang, Clojure, Scheme, F#.

Π’ этой классификации Π΅ΡΡ‚ΡŒ ΠΈΠ·ΡŠΡΠ½Ρ‹. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π½Π΅ всС согласны с простым ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языков. НСкоторыС спСциалисты ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ истинно Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ чистыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ языки. Из извСстных это, фактичСски, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Haskell.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, соврСмСнныС языки ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ сразу нСсколько ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌ. Лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ основой основ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… языков, сСйчас ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… языках, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ C++.

НСсмотря Π½Π° нСдостатки классификации, я Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΠ»Π°Π½Ρƒ. Π’ΠΎΠ·ΡŒΠΌΠΈΡ‚Π΅ ΠΏΠ°Ρ€Ρƒ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… языков ΠΈ ΠΏΠ°Ρ€Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ…, ΠΈ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π½Π° Π½ΠΈΡ… нСсколько Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Π‘ΡƒΠ΄Π΅Ρ‚ Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ, Ссли Π²Ρ‹ Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅ языки с Ρ€Π°Π·Π½Ρ‹ΠΌ синтаксисом.

НСзнакомый синтаксис заставляСт ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ языки нСпонятными. Но Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΊ Π½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ½ΡƒΡ‚ΡŒ всСго Π·Π° нСсколько Π΄Π½Π΅ΠΉ. НСзнакомыС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π³ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС.

Π’ ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… языках Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя сущСствовало Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΡ€ΠΈ этом ΠΊΠΎΠ΄ управлял Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π―Π·Ρ‹ΠΊΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° сСйчас Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΌΠΈ, ΠΊ Π½ΠΈΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, относят Fortran, Pascal ΠΈ C.

Π’ противовСс ΠΈΠΌ, Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языках программист Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ вмСстС, ΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ. К Ρ‚Π°ΠΊΠΈΠΌ языкам относят C++, Object Pascal, Java, C#, JavaScript.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ языки? Π”Π°, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ языка ΡΠΎΠ²ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ нСсколько Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌ, Ρ‡Ρ‚ΠΎ, кстати, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π½Π°ΡˆΡƒ Π·Π°Π΄Π°Ρ‡Ρƒ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, освоСниС Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ. И Ссли Pascal β€” ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ, Ρ‚ΠΎ OCaml β€” Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ.

Π―Π·Ρ‹ΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ динамичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ языки, Π° Ρ‚Π°ΠΊΠΆΠ΅ языки с сильной ΠΈ слабой Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ.

ДинамичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ языки часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ β€” скриптов ΠΈΠ»ΠΈ сцСнариСв. Они просты Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ, Π½Π΅Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ программиста ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΊΠΎΠ΄. К Π½ΠΈΠΌ относят JavaScript, Python, PHP, Ruby.

БтатичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ языки ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ соотвСтствиС Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, поэтому программисту приходится ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚. Π­Ρ‚ΠΎ касаСтся ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΈ Π΄Π°ΠΆΠ΅ самих Ρ‚ΠΈΠΏΠΎΠ². ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Ρ‚Π°ΠΊΠΈΡ… языках ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ большС ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ, Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌ смыслС, Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ с ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ°ΠΌΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ простыми ошибками. Π’ этой ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΠΌΡ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠΌ C++, Java, C#, Kotlin, Go.

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠ·Π½Π°Π½Π½Ρ‹ΠΉ способ классификации β€” Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ языков Π½Π° Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ ΠΈ высокоуровнСвыС. Π―Π·Ρ‹ΠΊΠΈ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π² систСмном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ³Ρ€, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΌ, Π³Π΄Π΅ трСбуСтся высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΈ экономия рСсурсов. К Π½ΠΈΠΌ относят C, C++, Rust ΠΈ, Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠ΅Ρ€Π΅, Go.

Π―Π·Ρ‹ΠΊΠΈ высокого уровня ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ программиста. Π•ΠΌΡƒ Π½Π΅ приходится Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ строки, ΠΎΠ½ занимаСтся Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ бизнСс-Π·Π°Π΄Π°Ρ‡. Π’ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ высокоуровнСвых входят Java, C#, Scala, Python, Ruby.

Если языку программирования Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ скорости, Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΈΡˆΡƒΡ‚ Π½Π° Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΌ языкС ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ этот быстрый ΠΊΠΎΠ΄ ΠΈΠ· языка высокого уровня. ПодобноС смСшСниС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π° счёт Ρ‚Π΅Ρ…Π½ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Ρ†Π΅Π»ΠΎΠΌ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Foreign Function Interface (FFI), ΠΈΠ»ΠΈ Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π’Π½Π΅ΡˆΠ½ΠΈΡ… Π€ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

НаконСц, языки Π±Ρ‹Π²Π°ΡŽΡ‚ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π½ΠΈΡˆΠ΅Π²Ρ‹Π΅. Π­Ρ‚ΠΎ условноС Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΠΈΡˆΠ΅Π²Ρ‹Π΅ языки практичСски Π½Π΅ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½Π°Π΄ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… придётся ΡƒΡ‡ΠΈΡ‚ΡŒ SQL, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π° β€” JavaScript, Π° для проСктирования iOS ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β€” Swift.

Π€ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚

Помимо лингвистичСских Π·Π½Π°Π½ΠΈΠΉ Π² быстро ΠΌΠ΅Π½ΡΡŽΡ‰Π΅ΠΌΡΡ ΠΌΠΈΡ€Π΅ Π²Π°ΠΆΠ½Ρ‹ знания Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅. Π’Π΅, Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΡŽΡ‚ своСй Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π΄Π΅ΡΡΡ‚ΡŒ Π»Π΅Ρ‚, ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒ.

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½Π°Ρ Π±Π°Π·Π° для программистов β€” Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…. Она Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅ споры, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΡ… программистов эти знания Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π½Π΅ вострСбованы. Как говорят Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-баталиях, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΈΠ»ΠΈΡ‚ΡŒ ΠΊΡ€ΡƒΠ΄Ρ‹, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹. И Π² этом Π΅ΡΡ‚ΡŒ доля истины.

Но здСсь ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ. Π”Π²Π°Π΄Ρ†Π°Ρ‚ΡŒ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄ ΠΊΡ€ΡƒΠ΄Ρ‹ ΠΏΠΈΠ»ΠΈΠ»ΠΈ Π½Π΅ Π½Π° Python, Π° Π½Π° Delphi. Π‘Π΅ΠΊΠ΅Π½Π΄ писали Π½Π° Perl. Π—Π° свою ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Ρƒ, Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Ρ‹ этого ΠΈΠ»ΠΈ Π½Π΅Ρ‚, Π²Ρ‹ нСсколько Ρ€Π°Π· помСняСтС стСк. И, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, СдинствСнноС, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ придётся ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π½Π° Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… β€” это Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚.

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

НС языками Π΅Π΄ΠΈΠ½Ρ‹ΠΌΠΈ

ΠšΡ€ΠΎΠΌΠ΅ языков программирования, Π½Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ инструмСнты ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ. Π“Π΄Π΅ Π±Ρ‹ Π²Ρ‹ Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ, Π²Π°ΠΌ навСрняка пригодится git. Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, Π·Π°Π²Π΅Π΄ΠΈΡ‚Π΅ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ Π½Π° GitHub ΠΈ Π΄Π΅Ρ€ΠΆΠΈΡ‚Π΅ Ρ‚Π°ΠΌ домашниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹.

Π Π°Π·Π±Π΅Ρ€ΠΈΡ‚Π΅ΡΡŒ с Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ β€” CI/CD. НастройтС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ сборку своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ΠΠ°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Π΅ тСсты. Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ тСстированиС ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· этапов сборки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ собирался Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаС, Ссли проходят всС тСсты.

Π”ΠΎΠ²Π΅Π΄ΠΈΡ‚Π΅ Π·Π½Π°Π½ΠΈΠ΅ английского Π΄ΠΎ уровня B2 β€” Upper Intermediate. Π­Ρ‚ΠΎΠ³ΠΎ достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π°Π½Π³Π»ΠΈΠΉΡΠΊΡƒΡŽ Ρ€Π΅Ρ‡ΡŒ Π½Π° слух, ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с носитСлями языка ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ письма.

Π― ΡƒΡ‡ΠΈΠ» английский Π² школС. МнС Ρ…Π²Π°Ρ‚Π°Π»ΠΎ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ. Но сСйчас, Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π° YouTube, Π½ΠΎΠ²Ρ‹Π΅ знаниях приходят ΠΊ Π½Π°ΠΌ Ρ‡Π΅Ρ€Π΅Π· Π²ΠΈΠ΄Π΅ΠΎ Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄Ρ‹. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡΡ Π΄ΠΎΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒ английский, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ сСбС этот ваТнСйший ΠΊΠ°Π½Π°Π».

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ ΠΈΠ½Π΄ΡƒΡΡ‚Ρ€ΠΈΡŽ, ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π² Π² Π½Π΅ΠΉ Ρ‚Ρ€ΠΈΠ΄Ρ†Π°Ρ‚ΡŒ Π»Π΅Ρ‚? Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡƒΠΌΠΈΡ€Π°ΡŽΡ‚, ΠΈ ΡƒΠΌΠΈΡ€Π°ΡŽΡ‚ быстро. Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π½Π΅Ρ‚ dBASE ΠΈ Clarion, ΠΈ Π΄Π°ΠΆΠ΅ названия эти соврСмСнным программистам Π½Π΅Π²Π΅Π΄ΠΎΠΌΡ‹. БвящСнная Π²ΠΎΠΉΠ½Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Pascal ΠΈ C, которая шла всС Π²ΠΎΡΡŒΠΌΠΈΠ΄Π΅ΡΡΡ‚Ρ‹Π΅, ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΎΠ±Ρ‹Π΄Π΅Π½Π½ΠΎ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»Π°ΡΡŒ ΠΏΠΎΠ±Π΅Π΄ΠΎΠΉ C. Но сСйчас это Π½ΠΈΠΊΠΎΠ³ΠΎ Π½Π΅ Π²ΠΎΠ»Π½ΡƒΠ΅Ρ‚ β€” Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Pascal ΠΈ C, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ пишСм Π½Π° Java?

ΠœΡ‹ учимся, зная, Ρ‡Ρ‚ΠΎ 90% Π½ΠΎΠ²Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ ΡƒΡΡ‚Π°Ρ€Π΅ΡŽΡ‚ ΡƒΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· Ρ‚Ρ€ΠΈ Π³ΠΎΠ΄Π°. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π΅Ρ‰Ρ‘ Π΄Π²Π° Π½Π°Π²Ρ‹ΠΊΠ°.

Π£ΠΌΠ΅Π½ΠΈΠ΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ. И ΡƒΠΌΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡƒΡ‡ΠΈΡ‚ΡŒ всё подряд, особСнно Ссли это всё ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΠ΄Π½ΠΎΠ΅ ΠΈ соврСмСнноС. Никто Π½Π΅ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΎΠΉ срок ΠΎΡ‚ΠΌΠ΅Ρ€Π΅Π½ ΠΌΠΎΠ΄Π½Ρ‹ΠΌ тСхнологиям. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”Ρ€Π΅Π²Π½Π΅ΠΉΡˆΠΈΠΉ язык программирования восстал ΠΈΠ· ΠΌΡ‘Ρ€Ρ‚Π²Ρ‹Ρ… ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ популярным

Π―Π·Ρ‹ΠΊ программирования, ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π½Ρ‹ΠΉ Π΅Ρ‰Ρ‘ Π² пятидСсятыС, Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΆΠΈΠ²Ρ‘Ρ‚ ΠΈ здравствуСт. РазбираСмся, ΠΊΠΎΠΌΡƒ ΠΈ для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ Fortran Π² 2k21.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Абрикос Абрикосовый для Skillbox Media

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π’Ρ‹ Π½Π΅ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ Fortran Π² Ρ‚ΠΎΠΏ-10 самых популярных языков программирования. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ½ Π·Π°Π½ΠΈΠΌΠ°Π» 17-Π΅ мСсто Π² индСксС TIOBE Π² июнС 2021 Π³ΠΎΠ΄Π°, хотя Π³ΠΎΠ΄ΠΎΠΌ Ρ€Π°Π½Π΅Π΅ Π΅Π»Π΅-Π΅Π»Π΅ добрался Π΄ΠΎ 37-Π³ΠΎ.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ΡΠΊΠΎΠ΅ сообщСство Π² шокС β€” Π½Π° Quora Π΄Π°ΠΆΠ΅ появился большой Ρ‚ΠΎΠΏΠΈΠΊ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«Is Fortran Still Alive?Β» (кстати, Ρƒ этого Ρ‚ΠΎΠΏΠΈΠΊΠ° ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Ρ‹ β€” Π²ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€). Π’ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… Ρ€Π΅Π·ΠΊΠΎΠ³ΠΎ Π²Π·Π»Ρ‘Ρ‚Π° популярности Fortran ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ-ΠΏΠΎΠ»ΠΈΠ³Π»ΠΎΡ‚Ρ‹, ΡƒΡ‡Ρ‘Π½Ρ‹Π΅, ИВ-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹ ΠΈ Π΄Π°ΠΆΠ΅ Π±Ρ‹Π²ΡˆΠΈΠΉ Ρ‡Π»Π΅Π½ ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚Π° ΠΏΠΎ стандартам ISO / ANSI J3 Fortran ΠšΡ€Π΅ΠΉΠ³ Π”Π΅Π΄ΠΎ. ΠœΡ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ самыС Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Fortran воскрСс ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ фСниксу. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ β€” Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ дотянули Π΄ΠΎ Π˜Π³ΠΎΡ€Ρ НиколаСва. ΠšΡΡ‚Π°Ρ‚ΠΈ, этот старичок ΡΡ‚Ρ€Π΅Π»ΡŒΠ½ΡƒΠ» Π½Π΅ ΠΎΠ΄ΠΈΠ½ β€” сСйчас Π½Π° Π·Π°ΠΏΠ°Π΄Π΅ настоящий Π±ΡƒΠΌ Π½Π° COBOL-программистов.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° β„–1

НСт смысла ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанныС Π½Π° Fortran

МногиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ для прогнозирования ΠΏΠΎΠ³ΠΎΠ΄Ρ‹, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠ³ΠΎ двиТСния ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π΅Ρ‰Ρ‘ Π² 1980-Ρ… Π³ΠΎΠ΄Π°Ρ… β€” ΠΈ ΡƒΡ‡Ρ‘Π½Ρ‹Π΅ Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈΠΌΠΈ. А Ссли Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π·Π°Ρ‡Π΅ΠΌ это Π»ΠΎΠΌΠ°Ρ‚ΡŒ?

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

«Благодаря эффСктивности языка ΠΈ Π΅Π³ΠΎ способности ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ старый ΠΊΠΎΠ΄ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ поколСния студСнтов-Ρ„ΠΈΠ·ΠΈΠΊΠΎΠ² Π΄ΠΎ сих ΠΏΠΎΡ€ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Fortran Π½Π° основС старых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΠ΄Π° своих Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉΒ».

ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык качСствСнный ΠΈ ΠΎΡ‚ΠΏΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π·Π° дСсятки Π»Π΅Ρ‚ ΠΊΠΎΠ΄ β€” пустая Ρ‚Ρ€Π°Ρ‚Π° Π΄Π΅Π½Π΅Π³, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ³Π΄Π° Ρƒ всСх Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с настоящим Ρ‚Π΅Ρ…Π΄ΠΎΠ»Π³ΠΎΠΌ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Fortran Π² вычислСниях β€” Ρ‚Π°ΠΌ ΠΎΠ½ ΠΏΠΎΠΊΠ° Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌ.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Fortran всё Π΅Ρ‰Ρ‘ Π°ΠΊΡ‚ΡƒΠ°Π»Π΅Π½ Π² Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… вычислСниях β€” здСсь ΠΎΠ½ всСгда сохранял лидСрство. И я Π½Π΅ Π²ΠΈΠΆΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ситуация ΠΊΠ°ΠΊ-Ρ‚ΠΎ Ρ€Π΅Π·ΠΊΠΎ измСнилась. Π¦Π΅Π½Π½ΠΎΡΡ‚ΡŒ вычислСний Π½Π° Fortran всё Π΅Ρ‰Ρ‘ ΠΎΡ‡Π΅Π½ΡŒ высока. А Fortran-ΠΊΠΎΠ΄ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ Π²Π°ΠΆΠ΅Π½ для чСловСчСства Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… сфСрах: ΠΏΡ€ΠΎΠ³Π½ΠΎΠ· ΠΏΠΎΠ³ΠΎΠ΄Ρ‹, созданиС Π½ΠΎΠ²Ρ‹Ρ… лСкарств, Ρ„ΠΈΠ·ΠΈΠΊΠ° высоких энСргий, Π³Π΅ΠΎΡ‚Π΅Ρ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, всё, Ρ‡Ρ‚ΠΎ называСтся β€žΠ³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈβ€œ. И Fortran здСсь β€” Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт. Π₯отя Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ людСй ΠΈΠ· ΠΌΠΈΡ€Π° ИВ вряд Π»ΠΈ захотят ΠΈΠ»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΒ».

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° β„–2

Fortran Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌ Π² СстСствСнных Π½Π°ΡƒΠΊΠ°Ρ…

Π‘Π°ΠΌΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Fortran β€” сокращСниС ΠΎΡ‚ Β«Formula translationΒ». Много Π»Π΅Ρ‚ этот язык использовали ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹, ΠΈ Π½Π° Π½Ρ‘ΠΌ написано мноТСство Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. НапримСр, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ (matrix solvers) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ конструировании самолётов, Π·Π΄Π°Π½ΠΈΠΉ, Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρƒ Fortran ΠΎΡ‡Π΅Π½ΡŒ Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΉ ΠΈ простой встроСнный синтаксис для распрСдСлённого ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Fortran ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ популярСн Π² Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… ΠΊΡ€ΡƒΠ³Π°Ρ…. ОсобСнно Π² ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Никакой Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык Π½Π΅ сравнится с Π΅Π³ΠΎ возмоТностями Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈΒ».

Π ΠΈΡ‡Π°Ρ€Π΄ ΠšΠ΅Π½Π½Π΅Ρ‚ Π­Π½Π³,
Π±Ρ‹Π²ΡˆΠΈΠΉ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ ATI Technologies

Π—Π° 60 Π»Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ написали ΠΏΠΎΠ΄ Fortran мноТСство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Π»ΡŽΠ±Ρ‹Ρ… вычислСний. Π’ арсСналС Β«Π΄Π΅Π΄ΡƒΡˆΠΊΠΈΒ» β€” Ρ€Π°Π±ΠΎΡ‚Π° с комплСксными числами, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΈ Π΄Π°ΠΆΠ΅ Coarray для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²Π°ΠΆΠ½Ρ‹Ρ… для Π½Π°ΡƒΡ‡Π½ΠΎΠ³ΠΎ сообщСства ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Fortran:

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«ΠŸΠΎΡ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΡ‘ΠΌΡ‹ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹ Π½Π° Fortran ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈ совмСстно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ многочислСнными Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ исслСдоватСлСй».

Π―Π½ ΠšΡ€ΠΈΡΡ‚ΠΈΠ°Π½ ΠœΠ΅ΠΉΠ΅Ρ€,
Π΄ΠΎΠΊΡ‚ΠΎΡ€ Π² сфСрС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Π½Π°ΡƒΠΊ

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Π’ основном Fortran ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΡƒΡ‡Ρ‘Π½Ρ‹Π΅ β€” для числСнного модСлирования. ΠžΡ‚Ρ‡Π°ΡΡ‚ΠΈ это связано с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠ΅ΠΉ, отчасти с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ синтаксис языка позволяСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΡƒΠ΄Π° быстрСС ΠΈ ΠΏΡ€ΠΎΡ‰Π΅, Ρ‡Π΅ΠΌ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… языках. НапримСр, ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами, ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°ΠΌΠΈ ΠΈΠ»ΠΈ комплСксными числами. Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° β€” Ρ‡Π°ΡΡ‚ΡŒ самых Π²Π°ΠΆΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹ (LAPACK, BLAS ΠΈ ARPACK) ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π±Ρ‹Π»ΠΈ написаны Π½Π° Fortran ΠΈ, каТСтся, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ΄ Π½Π΅Π³ΠΎΒ».

Π‘ΠΈΠΌΠΎΠ½Π΅ Π‘Ρ‚ΡƒΡ€Π½ΠΈΠΎΠ»ΠΎ,
ΡƒΡ‡Ρ‘Π½Ρ‹ΠΉ

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° β„–3

Fortran β€” самый быстрый язык программирования

Fortran Π΄Π°ΠΆΠ΅ быстрСС Π‘ΠΈ β€” поэтому ΡƒΡ‡Ρ‘Π½Ρ‹Π΅ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ Π΅Π³ΠΎ для самых скоростных ΠΈ слоТных вычислСний.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Fortran β€” СдинствСнный язык Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ рассматриваСт массив ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Π‘, Python (Π° Π΅Ρ‰Ρ‘ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ gnuplot) ΠΈ Π΄Π°ΠΆΠ΅ shell-скриптами. Π›ΠΈΡ‡Π½ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Fortran для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ слоТных Π·Π°Π΄Π°Ρ‡ биологичСской Ρ„ΠΈΠ·ΠΈΠΊΠΈ ΠΈ ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½ΠΈ Ρ€Π°Π·Ρƒ Π½Π΅ ΠΏΠΎΠΆΠ°Π»Π΅Π΅Ρ‚Π΅, Ссли ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Ρ‘Ρ‚Π΅ Π΅Π³ΠΎ Π»ΡŽΠ±ΠΎΠΌΡƒ β€žΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΌΡƒ языку ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡβ€œ Π² любой СстСствСнно-Π½Π°ΡƒΡ‡Π½ΠΎΠΉ дисциплинС».

Π’ΠΈΠ΄ΠΆΠ°ΠΉ ΠšΡƒΠΌΠ°Ρ€,
сотрудник ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° DST Π² Индийском институтС Π½Π°ΡƒΠΊΠΈ

ΠŸΡ€Π°Π²Π΄Π°, Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ Π² скорости Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‰ΡƒΡ‚ΠΈΠΌΡ‹ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ Π½Π°Π΄ свСрхслоТными вычислСниями. И Ссли Π²Ρ‹ Π½Π΅ Ρ„ΠΈΠ·ΠΈΠΊ ΠΈΠ· ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²Π° энСргСтики БША, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ случайно Π΅ΡΡ‚ΡŒ доступ ΠΊ ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ IBM BlueGene/Q, ΠΈΠ»ΠΈ Π½Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚Π΅ΡΡŒ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠ΅ΠΉ Π² АгСнтствС Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ бСзопасности Π½Π° ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Cray, Π²Ρ‹ вряд Π»ΠΈ почувствуСтС Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π‘ΠΈ ΠΈ Fortran ΠΈΠ»ΠΈ C++ ΠΈ Fortran. Но Ссли Ρƒ вас Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅ всё-Ρ‚Π°ΠΊΠΈ Π΅ΡΡ‚ΡŒ ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΈ слоТныС Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ‚ΠΎ компилятор Fortran ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π²Π°ΠΌ Ρ‡ΡƒΠ΄ΠΎ.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Π›ΡŽΠ΄ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Fortran, ΠΊΠΎΠ³Π΄Π° Π‘ΠΈ нСдостаточно быстр, β€” ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это происходит ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ гигантских ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ†. ПослС 60 Π»Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ компилятор Fortran ΠΎΠ±ΠΎΡˆΡ‘Π» всСх Π² этой ΡƒΠ·ΠΊΠΎΠΉ нишС».

Π”Π΅Ρ€Π΅ΠΊ Росс,
программист Π½Π° Fortran с 1975 Π³ΠΎΠ΄Π°

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° 4

Fortran Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡƒΠΌΠΈΡ€Π°Π» β€” ΠΈ Π΄Π°ΠΆΠ΅ развивался

Fortran ΠΈ Π΅Π³ΠΎ стандарты всё Π΅Ρ‰Ρ‘ Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ β€” Ρƒ Π½Π΅Π³ΠΎ ΠΊΡƒΡ‡Π° Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² ΠΈ стандартов, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ язык, Π½ΠΎ сохраняСт ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ вСрсиями:

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

«БСгодняшний Fortran β€” это Π½Π΅ Ρ‚ΠΎΡ‚ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я ΡƒΡ‡ΠΈΠ» Π² 1975 Π³ΠΎΠ΄Ρƒ, Π° ΠΌΠΎΠΉ ΠΎΡ‚Π΅Ρ† β€” Π² ΠΊΠΎΠ½Ρ†Π΅ 1950-Ρ…. НапримСр, Π² ΠΏΠ΅Ρ€Π²Ρ‹Ρ… вСрсиях ΠΎΠ½ Π±Ρ‹Π» нСструктурированным языком. А сСгодня ΠΎΠ½ ΡƒΠΆΠ΅ структурирован ΠΈ содСрТит конструкции, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ Algol, β€” ΠΏΡ€ΠΈ этом Π²Ρ‹ всё Ρ‚Π°ΠΊ ΠΆΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ F77 (ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Fortran-IV). И это ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ! Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ языка ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ соврСмСнный язык ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ΅Β».

КлСм ΠšΠΎΡƒΠ»,
Ρ…Π°ΠΊΠ΅Ρ€ ΠΈ программист

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

ΠšΠΎΠΌΡƒ пригодится Fortran

Fortran β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ язык для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΡƒΡ‡Π½Ρ‹Ρ…. Π•Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π½Π° Π±ΠΎΠ»Π΅Π΅ высоком ΡƒΡ€ΠΎΠ²Π½Π΅ абстракции, Ρ‡Π΅ΠΌ Π² Π‘ΠΈ-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… языках. А Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ„ΠΎΠΊΡƒΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° создании прилоТСния, Π° Π½Π΅ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ Π² Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Π΅ вопросы ΠΈ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с ограничСниями языка. ΠŸΡ€ΠΈ этом ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ исполнСния остаётся космичСской.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Fortran Π΄ΠΎ сих ΠΏΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ β€” Π΄Π°ΠΆΠ΅ Π² ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Π΅ БША. НапримСр, Π² 2017 Π³ΠΎΠ΄Ρƒ NASA ΠΏΡ€ΠΎΠ²Π΅Π»ΠΎ конкурс ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ своСго ΠΊΠΎΠ΄Π° Π½Π° Fortran.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β« ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, большая Ρ‡Π°ΡΡ‚ΡŒ аэрокосмичСских ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Fortran β€” Π½ΠΎ косвСнно, Ρ‡Π΅Ρ€Π΅Π· ΠΊΡƒΠΏΠ»Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ ПО для Π°Π½Π°Π»ΠΈΠ·Π°, написанноС Π½Π° этом языкС. Насколько я понимаю, Fortran β€” основа слуТбы ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·Π° ΠΏΠΎΠ³ΠΎΠ΄Ρ‹ БША. ΠžΡ‡Π΅Π½ΡŒ слоТныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для расчёта климатичСских ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ написаны ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° FortranΒ».

ΠœΠ°Ρ€ΠΊ Π¨Π»ΠΎΠΊΠ΅Ρ€,
Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Β«Π― знаю Π΄Π²ΡƒΡ… подрядчиков ΠΈΠ· ΠΎΠ±ΠΎΡ€ΠΎΠ½ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΈΡˆΡƒΡ‚ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π½Π° Fortran. Π­Ρ‚ΠΎΡ‚ язык ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΡΡƒΠΏΠ΅Ρ€ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ…, ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Π½Π°ΡƒΡ‡Π½ΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ…Β».

КСн Π“Ρ€Π΅Π³Π³,
ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€

А Π²ΠΎΡ‚ Ссли Π²Π°ΠΌ Π½Π°Π΄ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ПО с прямой адрСсациСй памяти ΠΈΠ»ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌΠΈ устройствами, Ρ‚ΠΎ Fortran Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

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

ΠšΡ€Π΅ΠΉΠ³ Π”Π΅Π΄ΠΎ,
Π±Ρ‹Π²ΡˆΠΈΠΉ Ρ‡Π»Π΅Π½ ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚Π° ΠΏΠΎ стандартам ISO / ANSI J3 Fortran

Как ΠΈ для Ρ‡Π΅Π³ΠΎ появился Fortran

Fortran Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π² IBM Π΅Ρ‰Ρ‘ Π² 1957 Π³ΠΎΠ΄Ρƒ β€” ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ IBM 704. Π­Ρ‚ΠΎ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ язык программирования высокого уровня, ΠΈ ΠΎΠ½ быстро Π·Π°Π²ΠΎΠ΅Π²Π°Π» ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ благодаря структурам управлСния ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ Π²Π²ΠΎΠ΄Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ Ρ‚ΡƒΡ‚ ΠΆΠ΅ Π½Π°Ρ‡Π°Π»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ компиляторы Fortran для своих ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ². К Π½Π°Ρ‡Π°Π»Ρƒ ΡˆΠ΅ΡΡ‚ΠΈΠ΄Π΅ΡΡΡ‚Ρ‹Ρ… Π³ΠΎΠ΄ΠΎΠ² Ρƒ Fortran Π±Ρ‹Π»ΠΈ ΡƒΠΆΠ΅ дСсятки компиляторов.

А Π΅Ρ‰Ρ‘ Fortran β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ язык со своим стандартом ANSI. ΠšΡΡ‚Π°Ρ‚ΠΈ, ANSI Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ISO (International Organization for Standardization), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ рСгулярно обновляСт спСцификации языка, β€” Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΎΠ½ ΠΈ Π½Π΅ собираСтся ΡƒΠΌΠΈΡ€Π°Ρ‚ΡŒ.

Бтандартизация сдСлала Fortran ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ для слоТных вычислСний. И Π΄Π°ΠΆΠ΅ сСгодня это самый популярный язык для вычислСний β€” Π° Π²Ρ‹ Π΄ΡƒΠΌΠ°Π»ΠΈ, Ρ‚Π°ΠΌ правят Π±Π°Π» эти ваши хипстСрскиС ΠΏΠΈΡ‚ΠΎΠ½Ρ‹, Π°Ρ€Ρ‹ ΠΈ Π΄ΠΆΡƒΠ»ΠΈΠΈ?

Но Ссли Π²Ρ‹ Π½Π΅ сСдовласый ΠΊΠ°ΠΊ Π»ΡƒΠ½ΡŒ ΡƒΡ‡Ρ‘Π½Ρ‹ΠΉ-акадСмист, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ ΠΏΠ°Ρ€Ρƒ тысяч Π»Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° Fortran ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ носит Π² ΠΏΠΎΡ€Ρ‚Ρ„Π΅Π»Π΅ Π²ΠΎΡΡŒΠΌΠΈΠ΄ΡŽΠΉΠΌΠΎΠ²Ρ‹Π΅ дискСты, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡ‚ΠΈΠ»ΡŒΠ½ΠΎΠ΅, ΠΌΠΎΠ΄Π½ΠΎΠ΅ ΠΈ ΠΌΠΎΠ»ΠΎΠ΄Ρ‘ΠΆΠ½ΠΎΠ΅. НапримСр, Java ΠΈΠ»ΠΈ Python. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΠΈΠΉ курс ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β» Skillbox.

ИндСкс TIOBE β€” это ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ популярности языков программирования. На Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ влияСт количСство курсов ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π° языкС, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ запросов Π² поисковиках Google, Bing, Yahoo, Wikipedia, Amazon, YouTube ΠΈ Baidu.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Rust ΠΈΠ»ΠΈ Π‘ΠΈ: ΠΊΡ‚ΠΎ Усэйн Π‘ΠΎΠ»Ρ‚ Π² ΠΌΠΈΡ€Π΅ программирования?

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Π‘ΠΈ β€” это сэнсэй Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠ΅ΠΊ-ниндзя

Π‘ΠΈ β€” это ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΡ… (ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ ΠΎΠ½ Π½Π°Ρ‡Π°Π» Π² 1969 Π³ΠΎΠ΄Ρƒ). Π•Π³ΠΎ ΠΎΡ‚Ρ†ΠΎΠΌ-основатСлСм являСтся ДСннис Π ΠΈΡ‚Ρ‡ΠΈ. Π’ 1989 Π³ΠΎΠ΄Ρƒ АмСриканский Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов ΠΈ ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Π°Ρ организация ΠΏΠΎ стандартизации Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ консСнсусныС стандарты для Π‘ΠΈ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ простым, Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ языком программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΎΠ½ ΠΈ сСйчас остаётся ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

Π‘Ρ‹Ρ‚ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠ²ΠΎΠ»Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ΅Ρ‡ΠΈ, ΡΡ‚ΠΈΡ€Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Ρ„ΠΎΡ‚ΠΎΠΊΠ°ΠΌΠ΅Ρ€Ρ‹, с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π΄Π½Ρ‘ΠΌ становятся всё Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΌΠΈ. Об этом ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΠ΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π² Π½ΠΈΡ… микропроцСссора, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π­Ρ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ эффСктивно, задСйствуя ΠΏΡ€ΠΈ этом нСбольшой ΠΎΠ±ΡŠΡ‘ΠΌ памяти. ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π½Π° Π‘ΠΈ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ части популярных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Windows, UNIX ΠΈ Linux, написаны Π½Π° Π‘ΠΈ. Π’Π΅Π΄ΡŒ Π΄Π°ΠΆΠ΅ сСгодня ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ языку Π‘ΠΈ Π½Π΅Ρ‚ Ρ€Π°Π²Π½Ρ‹Ρ…, хотя это Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ всСгда. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ссли трСбуСтся Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ устройствами, Π½ΡƒΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ устройств. И эти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‚ΠΎΠΆΠ΅ ΠΏΠΈΡˆΡƒΡ‚ΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° Π‘ΠΈ.

Π―Π·Ρ‹ΠΊ Π‘ΠΈ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ влияниС Π½Π° сфСру ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΠ³Ρ€Π°Π΅Ρ‚ здСсь ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ.

Rust β€” ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ Π²ΠΎ всСх областях

Rust β€” это ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык программирования с ΡƒΠΏΠΎΡ€ΠΎΠΌ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, ΠΈ особСнно Π½Π° бСзопасный ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния синтаксиса Rust Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ языку C++. А Ρ‡Ρ‚ΠΎ касаСтся бСзопасности ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, Rust обходится Π±Π΅Π· сборки мусора: вмСсто Π½Π΅Ρ‘ здСсь систСма ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ заимствования.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Rust Π±Ρ‹Π»Π° Π½Π°Ρ‡Π°Ρ‚Π° Π“Ρ€Π΅ΠΉΠ΄ΠΎΠ½ΠΎΠΌ Π₯ΠΎΡ€ΠΎΠΌ Π² сообщСствС Mozilla Research.

Π’ Rust основной Π°ΠΊΡ†Π΅Π½Ρ‚ сдСлан Π½Π°:

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ

ОсновноС прСимущСство Rust: ΠΎΠ½ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²ΠΎ врСмя компиляции ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΎ ΠΎΡ‚ разымСнования Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… ΠΈΠ»ΠΈ висячих ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅, Rust затрудняСт Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ памяти.

Π’ языкС Rust сборщик мусора Π½Π΅ прСдусмотрСн. Rust ΡƒΠ·Π½Π°Ρ‘Ρ‚ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° пСрСмСнная Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· области видимости ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Π΅Ρ‘ врСмя ΠΆΠΈΠ·Π½ΠΈ заканчиваСтся, Π²ΠΎ врСмя компиляции. ПослС Ρ‡Π΅Π³ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ассСмблСра/LLVM для освобоТдСния памяти. Π­Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π²ΠΎ врСмя выполнСния.

ΠŸΠΎΡ‚ΠΎΠΊΠΈ Π² Rust автоматичСски Β«ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡΒ» Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° благодаря Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΏΠΎΠ½ΡΡ‚ΠΈΡŽ, ΠΊΠ°ΠΊ Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅. Π—Π°ΠΏΠΈΡΡŒ происходит, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡ‚ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ измСняСмый доступ β€” Π»ΠΈΠ±ΠΎ владСя Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π»ΠΈΠ±ΠΎ имСя измСняСмоС заимствованиС. Π’ ΠΎΠ±ΠΎΠΈΡ… случаях ΠΏΠΎΡ‚ΠΎΠΊ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ СдинствСнным, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ доступ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Web Assembly

Web Assembly ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ с большим ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠΌ вычислСний Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π½Π° встроСнных устройствах ΠΈΠ»ΠΈ Π³Π΄Π΅-Π»ΠΈΠ±ΠΎ Π΅Ρ‰Ρ‘. Он запускаСтся со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ машинного ΠΊΠΎΠ΄Π°. Rust компилируСтся Π² Web Assembly с Ρ†Π΅Π»ΡŒΡŽ быстрого ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ выполнСния.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ скорости Π‘ΠΈ ΠΈ Rust

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ

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

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ сортировки:

Колонки со ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС (Worst Case) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ сортировки Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ…ΡƒΠΆΠ΅ всСх.

Для сортировки ΠΏΡƒΠ·Ρ‹Ρ€ΡŒΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС составит O(NΒ²). Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ…ΡƒΠ΄ΡˆΠ΅Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ сортировки. Π‘ΡƒΠ΄Π΅Ρ‚ сгСнСрирована итоговая ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, которая ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС. Для этого Π½Π°Π΄ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ врСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для сортировки элСмСнтов.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΈΡˆΡƒΡ‚ΡΡ всС ΠΏΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π° Π‘ΠΈ ΠΈ Π½Π° Rust. Для Ρ†Π΅Π»ΠΈ Π²Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ массив Ρ†Π΅Π»Ρ‹Ρ… чисСл, заполняСмый случайными числами с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° случайных чисСл rand() Π½Π° Π‘ΠΈ ΠΈ rand::Rng Π½Π° Rust. Π­Ρ‚ΠΎΡ‚ массив задаётся Π² качСствС Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… для Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сортировки, Π° Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ. Π”Π°Π»ΡŒΡˆΠ΅ тСстируСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² для Ρ‚Ρ€Ρ‘Ρ… Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ²: 1000, 10 000 ΠΈ 100 000 элСмСнтов.

Π’Π°ΠΊΠΎΠΉ Π½Π°Π±ΠΎΡ€ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ запускаСтся Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 100 ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ, Π° для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… выполняСтся усрСднСниС.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ для сравнСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ систСмы, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π» Π·Π°ΠΏΡƒΡ‰Π΅Π½ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ подсчёт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

Машина: MacBook Pro (16 дюймов, 2019 года).

ΠŸΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€: 2,3 Π“Π“Ρ† 8-ядСрный Intel Core i9.

ΠŸΠ°ΠΌΡΡ‚ΡŒ: 16 Π“Π± 2667 ΠœΠ“Ρ† DDR4.

rustc 1.45.2 (Ρ„Π»Π°Π³ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ β€” release).

Бтатистика ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

НиТС приводятся сгСнСрированныС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…:

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°Π²Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° сортировки ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… массивов Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ случаях Rust Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅, Π° Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ случаях Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π‘ΠΈ. Π’ Π½ΠΈΠΆΠ½ΠΈΡ… Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°Ρ… (1000 элСмСнтов), Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ сортировки вставками, Rust Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅. Π’ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 10 000 элСмСнтов CΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅ Π²ΠΎ всСх ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… сортировки.

Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования. Π€ΠΎΡ‚ΠΎ Π‘Π°ΠΌΡ‹ΠΉ быстрый язык программирования

Гистограммы Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ Π²ΠΎ всСх случаях.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ получится Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅.

Π’ΠΎΡ‚ ссылка Π½Π° Github ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘Π»ΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ язык быстрСС, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ случая. Но Rust ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ†ΠΈΡŽ Π² скорости языку CΠΈ: ΠΎΠ½ быстрСС, Ρ‡Π΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ популярныС языки, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Java ΠΈ Python. Помимо скорости, Π² Rust Π°ΠΊΡ†Π΅Π½Ρ‚ сдСлан Π½Π° Ρ‚Π°ΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностях, ΠΊΠ°ΠΊ бСзопасная Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ. А ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρƒ Π½Π΅Π³ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Rust ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для создания самых Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… Π΄Π²ΠΈΠΆΠΊΠΎΠ², ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ машин для модСлирования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π² блиТайшСС врСмя Rust навСрняка Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΆΠ΅ Π²Π΅Π·Π΄Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *