ืคืจื•ื™ืงื˜ Pyston, ื”ืžืฆื™ืข ืืช Python ืขื ืžื”ื“ืจ JIT, ื—ื–ืจ ืœืžื•ื“ืœ ืคื™ืชื•ื— ืคืชื•ื—

ืžืคืชื—ื™ ืคืจื•ื™ืงื˜ Pyston, ื”ืžืฆื™ืข ื™ื™ืฉื•ื ื‘ื™ืฆื•ืขื™ื ื’ื‘ื•ื”ื™ื ืฉืœ ืฉืคืช Python ื‘ืืžืฆืขื•ืช ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ืงื•ืžืคื™ืœืฆื™ื” JIT ืžื•ื“ืจื ื™ื•ืช, ื”ืฆื™ื’ื• ืžื”ื“ื•ืจื” ื—ื“ืฉื” ืฉืœ Pyston 2.2 ื•ื”ื›ืจื™ื–ื• ืขืœ ื—ื–ืจืช ื”ืคืจื•ื™ืงื˜ ืœืงื•ื“ ื”ืคืชื•ื—. ื”ื™ื™ืฉื•ื ืฉื•ืืฃ ืœื”ืฉื™ื’ ื‘ื™ืฆื•ืขื™ื ื’ื‘ื•ื”ื™ื ื”ืงืจื•ื‘ื™ื ืœืืœื• ืฉืœ ืฉืคื•ืช ืžืขืจื›ืช ืžืกื•ืจืชื™ื•ืช ื›ืžื• C++. ื”ืงื•ื“ ืœืกื ื™ืฃ Pyston 2 ืžืคื•ืจืกื ื‘-GitHub ืชื—ืช ืจื™ืฉื™ื•ืŸ PSFL (Python Software Foundation License), ื‘ื“ื•ืžื” ืœืจื™ืฉื™ื•ืŸ CPython.

ื ื–ื›ื•ืจ ืฉืคืจื•ื™ืงื˜ ืคื™ื™ืกื˜ื•ืŸ ื”ื™ื” ื‘ืคื™ืงื•ื— ื‘ืขื‘ืจ ืขืœ ื™ื“ื™ Dropbox, ืฉื”ืคืกื™ืงื” ืœืžืžืŸ ืืช ื”ืคื™ืชื•ื— ื‘-2017. ืžืคืชื—ื™ Pyston ื”ืงื™ืžื• ืืช ื”ื—ื‘ืจื” ืฉืœื”ื ื•ื”ื•ืฆื™ืื• ืกื ื™ืฃ ืฉืœ Pyston 2 ืฉืขื•ืฆื‘ ืžื—ื“ืฉ ื‘ืื•ืคืŸ ืžืฉืžืขื•ืชื™, ืฉื”ื•ื›ืจื– ื™ืฆื™ื‘ ื•ืžื•ื›ืŸ ืœืฉื™ืžื•ืฉ ื ืจื—ื‘. ื‘ืžืงื‘ื™ืœ, ื”ืžืคืชื—ื™ื ื”ืคืกื™ืงื• ืœืคืจืกื ืืช ืงื•ื“ ื”ืžืงื•ืจ ื•ืขื‘ืจื• ืœืกืคืง assemblies ื‘ื™ื ืืจื™ื™ื ื‘ืœื‘ื“. ื›ืขืช ื”ื•ื—ืœื˜ ืœื”ืคื•ืš ืฉื•ื‘ ืืช ืคื™ื™ืกื˜ื•ืŸ ืœืคืจื•ื™ืงื˜ ืงื•ื“ ืคืชื•ื—, ื•ืœื”ืขื‘ื™ืจ ืืช ื”ื—ื‘ืจื” ืœืžื•ื“ืœ ืขืกืงื™ ื”ืงืฉื•ืจ ืœืคื™ืชื•ื— ืชื•ื›ื ืช ืงื•ื“ ืคืชื•ื—. ื™ืชืจื” ืžื›ืš, ื ืฉืงืœืช ื”ืืคืฉืจื•ืช ืฉืœ ื”ืขื‘ืจืช ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ืž-Pyston ืœ-CPython ื”ืกื˜ื ื“ืจื˜ื™.

ื™ืฆื•ื™ืŸ ื›ื™ Pyston 2.2 ืžื”ื™ืจ ื‘-30% ืž-Python ื”ืกื˜ื ื“ืจื˜ื™ ื‘ืžื‘ื—ื ื™ ื‘ื™ืฆื•ืขื™ื ืฉืžืขืจื™ื›ื™ื ืืช ื”ืขื•ืžืกื™ื ื”ื˜ืžื•ื ื™ื ื‘ื™ื™ืฉื•ืžื™ ืฉืจืช ืื™ื ื˜ืจื ื˜. ื™ืฉื ื” ื’ื ืขืœื™ื™ื” ืžืฉืžืขื•ืชื™ืช ื‘ื‘ื™ืฆื•ืขื™ื ื‘-Pyston 2.2 ื‘ื”ืฉื•ื•ืื” ืœืžื”ื“ื•ืจื•ืช ืงื•ื“ืžื•ืช, ืฉื”ื•ืฉื’ื” ื‘ืขื™ืงืจ ื‘ืืžืฆืขื•ืช ื”ื•ืกืคืช ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ืœืื–ื•ืจื™ื ื—ื“ืฉื™ื, ื›ืžื• ื’ื ืฉื™ืคื•ืจื™ื ื‘ืžื ื’ื ื•ื ื™ JIT ื•ืžื˜ืžื•ืŸ.

ื‘ื ื•ืกืฃ ืœืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ืฉืœ ื‘ื™ืฆื•ืขื™ื, ื”ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื” ืžืขื ื™ื™ื ืช ื’ื ืžื›ื™ื•ื•ืŸ ืฉื”ื™ื ืžืขื‘ื™ืจื” ืฉื™ื ื•ื™ื™ื ืžืขื ืฃ CPython 3.8.8. ื‘ืžื•ื ื—ื™ื ืฉืœ ืชืื™ืžื•ืช ืขื Python ืžืงื•ืจื™, ืคืจื•ื™ืงื˜ Pyston ื ื—ืฉื‘ ืœืžื™ืžื•ืฉ ื”ืืœื˜ืจื ื˜ื™ื‘ื™ ื”ืชื•ืื ื‘ื™ื•ืชืจ ืœ-CPython, ืžื›ื™ื•ื•ืŸ ืฉ-Pyston ื”ื•ื ืžื–ืœื’ ืžื‘ืกื™ืก ื”ืงื•ื“ ื”ืจืืฉื™ ืฉืœ CPython. Pyston ืชื•ืžื›ืช ื‘ื›ืœ ื”ืชื›ื•ื ื•ืช ืฉืœ CPython, ื›ื•ืœืœ C API ืœืคื™ืชื•ื— ื”ืจื—ื‘ื•ืช ื‘ืฉืคืช C. ื‘ื™ืŸ ื”ื”ื‘ื“ืœื™ื ื”ืขื™ืงืจื™ื™ื ื‘ื™ืŸ Pyston ืœ-CPython ื”ื•ื ื”ืฉื™ืžื•ืฉ ื‘-DynASM JIT, ืžื˜ืžื•ืŸ ืžื•ื˜ื‘ืข ื•ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ื›ืœืœื™ื•ืช.

ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ื™ื ื‘-Pyston 2.2, ื™ืฉ ื’ื ืื–ื›ื•ืจ ืฉืœ ื ื™ืงื•ื™ ื‘ืกื™ืก ื”ืงื•ื“ ืžืชื›ื•ื ื•ืช ื ื™ืคื•ื™ ื‘ืื’ื™ื ืจื‘ื•ืช ืฉืœ CPython, ืืฉืจ ืžืฉืคื™ืขื•ืช ืœืจืขื” ืขืœ ื”ื‘ื™ืฆื•ืขื™ื, ืืš ื›ืžืขื˜ ืฉืื™ื ืŸ ืžื‘ื•ืงืฉื•ืช ื‘ืงืจื‘ ืžืคืชื—ื™ื. ื ืชื•ื ื™ื ืกื˜ื˜ื™ืกื˜ื™ื™ื ืœืคื™ื”ื ื”ืกืจืช ื›ืœื™ ื ื™ืคื•ื™ ื‘ืื’ื™ื ืžื•ื‘ื™ืœื” ืœื”ืืฆื” ืฉืœ 2%, ืœืžืจื•ืช ื”ืขื•ื‘ื“ื” ืฉืจืง ื›-2% ืžื”ืžืคืชื—ื™ื ืžืฉืชืžืฉื™ื ื‘ืคื•ื ืงืฆื™ื•ืช ื”ืœืœื•.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”