Pyston рдкрд░рд┐рдпреЛрдЬрдирд╛, рдЬрд╕рд▓реЗ JIT рдХрдореНрдкрд╛рдЗрд▓рд░рдХреЛ рд╕рд╛рде рдкрд╛рдЗрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ, рдЦреБрд▓рд╛ рд╡рд┐рдХрд╛рд╕ рдореЛрдбреЗрд▓рдорд╛ рдлрд░реНрдХрд┐рдПрдХреЛ рдЫред

рдЖрдзреБрдирд┐рдХ JIT рдХрдореНрдкрд╛рдЗрд▓реЗрд╢рди рдЯреЗрдХреНрдиреЛрд▓реЛрдЬреАрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкрд╛рдЗрдерди рднрд╛рд╖рд╛рдХреЛ рдЙрдЪреНрдЪ-рд╕рдореНрдкрд╛рджрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реНрдиреЗ Pyston рдкрд░рд┐рдпреЛрдЬрдирд╛рдХрд╛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ Pyston 2.2 рдХреЛ рдирдпрд╛рдБ рд░рд┐рд▓реАрдЬ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реЗ рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓рд╛рдИ рдЦреБрд▓рд╛ рд╕реНрд░реЛрддрдорд╛ рдлрд┐рд░реНрддрд╛ рдЧрд░реНрдиреЗ рдШреЛрд╖рдгрд╛ рдЧрд░реЗред рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рдХреНрд╖реНрдп C++ рдЬрд╕реНрддрд╛ рдкрд░рдореНрдкрд░рд╛рдЧрдд рдкреНрд░рдгрд╛рд▓реА рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рдирдЬрд┐рдХ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рд╣рд╛рд╕рд┐рд▓ рдЧрд░реНрдиреЗ рд╣реЛред Pyston 2 рд╢рд╛рдЦрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдХреЛрдб PSFL (Python Software Foundation License) рдЕрдиреНрддрд░реНрдЧрдд GitHub рдорд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ, CPython рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЬрд╕реНрддреИред

рд╣рд╛рдореАрд▓рд╛рдИ рдпрд╛рдж рдЧрд░реМрдВ рдХрд┐ Pyston рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд╣рд┐рд▓реЗ Dropbox рджреНрд╡рд╛рд░рд╛ рдкрд░реНрдпрд╡реЗрдХреНрд╖рдг рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╕рд▓реЗ 2017 рдорд╛ рдХреЛрд╖ рд╡рд┐рдХрд╛рд╕ рд░реЛрдХреНрдпреЛред Pyston рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЖрдлреНрдиреЛ рдХрдореНрдкрдиреАрдХреЛ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реЗ рд░ рдПрдХ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рдкреБрди: рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ Pyston 2 рд╢рд╛рдЦрд╛ рдЬрд╛рд░реА рдЧрд░реЗ, рдЬреБрди рд╕реНрдерд┐рд░ рд░ рд╡реНрдпрд╛рдкрдХ рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рддрдпрд╛рд░ рдШреЛрд╖рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдПрдХреИ рд╕рдордпрдорд╛, рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрди рд░реЛрдХреЗ рд░ рдХреЗрд╡рд▓ рдмрд╛рдЗрдирд░реА рд╕рдореНрдореЗрд▓рдирд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрди рд╕реНрд╡рд┐рдЪ рдЧрд░реЗред рдЕрдм рдкрд┐рд╕реНрдЯрдирд▓рд╛рдИ рдкреБрдирдГ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдЙрдиреЗ рд░ рдХрдореНрдкрдиреАрд▓рд╛рдИ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдлреНрдЯрд╡реЗрдпрд░рдХреЛ рд╡рд┐рдХрд╛рд╕рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╡реНрдпрд╡рд╕рд╛рдпрд┐рдХ рдореЛрдбрд▓рдорд╛ рд╣рд╕реНрддрд╛рдиреНрддрд░рдг рдЧрд░реНрдиреЗ рдирд┐рд░реНрдгрдп рднрдПрдХреЛ рдЫ ред рдпрд╕рдмрд╛рд╣реЗрдХ, Pyston рдмрд╛рдЯ рдорд╛рдирдХ CPython рдорд╛ рдЕрдиреБрдХреВрд▓рди рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛рд▓рд╛рдИ рд╡рд┐рдЪрд╛рд░ рдЧрд░рд┐рдБрджреИрдЫред

рдпреЛ рдиреЛрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ рдХрд┐ Pyston 2.2 рд╡реЗрдм рд╕рд░реНрднрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдорд╛ рдЕрдиреНрддрд░реНрдирд┐рд╣рд┐рдд рд▓реЛрдбрд╣рд░реВрдХреЛ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реНрдиреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдгрд╣рд░реВрдорд╛ рдорд╛рдирдХ рдкрд╛рдЗрдерди рднрдиреНрджрд╛ 30% рдЫрд┐рдЯреЛ рдЫред Pyston 2.2 рдорд╛ рдЕрдШрд┐рд▓реНрд▓реЛ рд░рд┐рд▓реАрдЬрд╣рд░реВрдХреЛ рддреБрд▓рдирд╛рдорд╛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╡реГрджреНрдзрд┐ рдкрдирд┐ рдЫ, рдЬреБрди рдореБрдЦреНрдпрддрдпрд╛ рдирдпрд╛рдБ рдХреНрд╖реЗрддреНрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдХреВрд▓рдирд╣рд░реВ, рд╕рд╛рдереИ JIT рд░ рдХреНрдпрд╛рд╕рд┐рдЩ рд╕рдВрдпрдиреНрддреНрд░рд╣рд░реВрдорд╛ рд╕реБрдзрд╛рд░рд╣рд░реВ рдорд╛рд░реНрдлрдд рд╣рд╛рд╕рд┐рд▓ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред

рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд, рдирдпрд╛рдБ рд░рд┐рд▓реАрдЬ рдкрдирд┐ рд░реЛрдЪрдХ рдЫ рдХрд┐рдирднрдиреЗ рдпрд╕рд▓реЗ CPython 3.8.8 рд╢рд╛рдЦрд╛рдмрд╛рдЯ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдмреЛрдХреНрдЫред рдиреЗрдЯрд┐рдн рдкрд╛рдЗрдердирд╕рдБрдЧ рдЕрдиреБрдХреВрд▓рддрд╛рдХреЛ рд╕рдиреНрджрд░реНрднрдорд╛, Pyston рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓рд╛рдИ рд╕рдмреИрднрдиреНрджрд╛ CPython-рдХрдореНрдкреНрдпрд╛рдЯрд┐рдмрд▓ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд░реВрдкрдорд╛ рдЪрд┐рдирд┐рдиреНрдЫ, рдХрд┐рдирдХрд┐ Pyston рдореБрдЦреНрдп CPython рдХреЛрдбрдмреЗрд╕рдХреЛ рдлреЛрд░реНрдХ рд╣реЛред Pyston рд▓реЗ CPython рдХрд╛ рд╕рдмреИ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ, C рднрд╛рд╖рд╛рдорд╛ рд╡рд┐рд╕реНрддрд╛рд░рд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ C API рд╕рд╣рд┐рддред Pyston рд░ CPython рдмреАрдЪрдХреЛ рдореБрдЦреНрдп рднрд┐рдиреНрдирддрд╛рд╣рд░реВ рдордзреНрдпреЗ DynASM JIT, рдЗрдирд▓рд╛рдЗрди рдХреНрдпрд╛рд╕рд┐рдЩ рд░ рд╕рд╛рдорд╛рдиреНрдп рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧ рд╣реЛред

Pyston 2.2 рдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдордзреНрдпреЗ, рддреНрдпрд╣рд╛рдБ CPython рдХреЛ рдзреЗрд░реИ рдбрд┐рдмрдЧрд┐рдВрдЧ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдмрд╛рдЯ рдХреЛрдб рдЖрдзрд╛рд░ рд╕рдлрд╛ рдЧрд░реНрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдЫ, рдЬрд╕рд▓реЗ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирд▓рд╛рдИ рдирдХрд╛рд░рд╛рддреНрдордХ рд░реВрдкрдорд╛ рдЕрд╕рд░ рдЧрд░реНрдЫ, рддрд░ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВ рдмреАрдЪ рд▓рдЧрднрдЧ рдорд╛рдЧрдорд╛ рдЫреИрдиред рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВ рджрд┐рдЗрдПрдХреЛ рдЫ рдЬрд╕рдХреЛ рдЖрдзрд╛рд░рдорд╛ рдбрд┐рдмрдЧрд┐рдЩ рдЙрдкрдХрд░рдгрд╣рд░реВ рд╣рдЯрд╛рдЙрдБрджрд╛ 2% рд╕реНрдкреАрдбрдЕрдк рд╣реБрдиреНрдЫ, рдпрд╕ рддрдереНрдпрдХреЛ рдмрд╛рд╡рдЬреБрдж рдХреЗрд╡рд▓ 2% рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдпреА рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреНред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди