Π‘ΡΠ°ΡΡΠΈΡΠ°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Exaloop ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° ΠΊΠΎΠ΄Π° Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Codon, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ Π·Π° Π΅Π·ΠΈΠΊΠ° Python, ΡΠΏΠΎΡΠΎΠ±Π΅Π½ Π΄Π° Π³Π΅Π½Π΅ΡΠΈΡΠ° ΡΠΈΡΡ ΠΌΠ°ΡΠΈΠ½Π΅Π½ ΠΊΠΎΠ΄ ΠΊΠ°ΡΠΎ ΠΈΠ·Ρ ΠΎΠ΄, Π½Π΅ΠΎΠ±Π²ΡΡΠ·Π°Π½ Ρ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Python. ΠΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΡΡ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΎΡ Π°Π²ΡΠΎΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° Python Π΅Π·ΠΈΠΊ Seq ΠΈ ΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠ° ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅. ΠΡΠΎΠ΅ΠΊΡΡΡ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΡΠΎ Π·Π°ΠΌΠ΅ΡΡΠ²Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π² Python. ΠΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ°, Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° C++ (Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΡ LLVM) ΠΈ Python ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π°Ρ ΠΏΠΎΠ΄ BSL (Business Source License).
ΠΠΈΡΠ΅Π½Π·ΡΡ BSL ββΠ±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΎΡ ΡΡΠΎΡΠ½ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° MySQL ΠΊΠ°ΡΠΎ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»Π° Open Core. Π‘ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° BSL Π΅, ΡΠ΅ ΠΊΠΎΠ΄ΡΡ Ρ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π·Π° ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ, Π½ΠΎ Π·Π° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΎ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΡΠ° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ Π·Π°ΠΊΡΠΏΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΠ³ΠΎΠ²ΡΠΊΠΈ Π»ΠΈΡΠ΅Π½Π· Π·Π° Π·Π°ΠΎΠ±ΠΈΠΊΠ°Π»ΡΠ½Π΅. ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΎΠ½Π½ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Codon ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΊΠΎΠ΄ΡΡ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅Ρ Π²ΡΡΠ»Π΅Π½ ΠΊΡΠΌ Π»ΠΈΡΠ΅Π½Π·Π° Apache 2.0 ΡΠ»Π΅Π΄ 3 Π³ΠΎΠ΄ΠΈΠ½ΠΈ (1 Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 2025 Π³.). ΠΠΎ ΡΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ Π»ΠΈΡΠ΅Π½Π·ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅, ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½Π΅, ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π½Π΅ΡΡΡΠ³ΠΎΠ²ΡΠΊΠΈ ΡΠ΅Π»ΠΈ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° ΠΊΠ°ΡΠΎ Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° C. Π ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° CPython, ΠΏΠ΅ΡΠ°Π»Π±Π°ΡΠ° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Codon ΡΠ΅ ΠΎΡΠ΅Π½ΡΠ²Π° Π½Π° 10-100 ΠΏΡΡΠΈ Π·Π° Π΅Π΄Π½ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ Python, Codon Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠΈΠ»Π°Π³Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΎΡΠ΅ ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. Codon ΡΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΡΠ΅ Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡΠ΄Π΅Π»Π½Π° ΡΡΠ½ΠΊΡΠΈΡ, Π·Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ΠΎΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ Π² ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π½Π° Python.
Codon Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΠΎΠ΄ΡΠ»Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° ΡΡΠ΅Π· Π΄ΠΎΠ±Π°Π²ΠΊΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π½ΠΎΠ²ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π΄Π° ΠΏΡΠΈΠ»Π°Π³Π°ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π² ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° ΠΈ Π΄ΠΎΡΠΈ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΊΠΈ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Ρ ΡΡΠΏΠΎΡΠ΅Π΄Π½ΠΎ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² Π±ΠΈΠΎΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ°ΡΠ° ΠΈ ΡΠΈΠ½Π°Π½ΡΠΎΠ²Π°ΡΠ° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°. ΠΠΎΠ»Π΅ΠΊΡΠΎΡΡΡ Π·Π° Π±ΠΎΠΊΠ»ΡΠΊ Boehm ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°.
ΠΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΡΡ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π° Python, Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ΡΠΎ Π² ΠΌΠ°ΡΠΈΠ½Π΅Π½ ΠΊΠΎΠ΄ Π½Π°Π»Π°Π³Π° ΡΠ΅Π΄ΠΈΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅ΡΠ°Ρ Π½Π° Codon Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ·ΡΠ°ΡΠ΅Π½ Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π» Π½Π° CPython. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Codon ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° 64-Π±ΠΈΡΠΎΠ² ΡΠΈΠΏ int Π·Π° ΡΠ΅Π»ΠΈ ΡΠΈΡΠ»Π°, Π΄ΠΎΠΊΠ°ΡΠΎ CPython ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ Π·Π° ΡΠ΅Π»ΠΈ ΡΠΈΡΠ»Π°. ΠΠΎΠ»Π΅ΠΌΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π°Π·ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ΄Π°, Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ Codon. ΠΠ°ΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π΅ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ° ΠΏΡΠΈΡΠΈΠ½Π΅Π½ΠΈ ΠΎΡ Π»ΠΈΠΏΡΠ°ΡΠ° Π½Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π·Π° Codon Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π° Python ΠΈ Π½Π΅Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½ΡΠΊΠΎΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ°. ΠΠ° Π²ΡΡΠΊΠ° ΡΠ°ΠΊΠ°Π²Π° Π½Π΅ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΡΡ ΠΈΠ·Π΄Π°Π²Π° ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ½ΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru