URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 115425
[ Назад ]

Исходное сообщение
"Выпуск Nuitka 0.6.0, компилятора для языка Python "

Отправлено opennews , 28-Сен-18 23:03 
Подготовлен (http://nuitka.net/posts/nuitka-release-060.html)  выпуск проекта Nuitka 0.6.0 (http://nuitka.net/), в рамках которого развивается компилятор, позволяющий транслировать скрипт на языке Python в представление на C++, которое затем можно скомпилировать в исполняемый файл, использующий libpython для обеспечения максимальной совместимости с CPython (используются штатные средства CPython для управления объектами). Обеспечена полная совместимость с актуальными выпусками Python 2.x и 3.x. По сравнению с CPython скомпилированные скрипты демонстрируют (http://nuitka.net/pages/overview.html) в тестах pystone повышение производительности на 312%. Код проекта распространяется под лицензией Apache.


В новой версии предложены значительные оптимизации производительности. По сравнению с прошлым выпуском прирост производительности относительно CPython  вырос с 258% до 312%. Обеспечена базовая поддержка вывода актуальных Си-типов, включая int и str, а также улучшено взаимодействие с кодом на языке Си. Внесены изменения в интерфейс командной строки и изменены некоторые значения по умолчанию.


URL: http://nuitka.net/posts/nuitka-release-060.html
Новость: https://www.opennet.me/opennews/art.shtml?num=49362


Содержание

Сообщения в этом обсуждении
"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 28-Сен-18 23:04 
https://shedskin.github.io/

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 28-Сен-18 23:38 
2.4-2.6? 10 лет назад было бы актуально

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено я , 30-Сен-18 04:18 
для ансибла и кучи другого, начатого писаться 10 лет назад до сих пор актуально

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Константавр , 28-Сен-18 23:20 
А ежели питоновский скрипт использует сторонние либы какиенить? Ну, там, PyQt, или ещё какие, это же не сработает. да?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Космополитан , 29-Сен-18 03:08 
Всё работает, все импортируемые либы компилируются точно также как и основной скрипт

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Константавр , 29-Сен-18 10:41 
Тогда это какая-то магия. А какиенить биндинги на опенцыви тоже работают? Надо попробовать.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Космополитан , 29-Сен-18 11:49 
Я лично проверял pyqt5, opencv, numpy, lxml, всё работает безупречно

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 08:57 
Зачем тащить Qt из питона? Пишите сразу на C++

В любом случае, питоно-нашлёпки обрубают возможность использование наследования классов Qt.


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Константавр , 29-Сен-18 10:39 
Для того, чтобы написать простенький скрипт не надо контроллировать выделение и очистку памяти и всю эту сишную галиматью (очень нужную и важную, но не в данном случае). Вот надо мне скрипт, но с мордой. нафиг мне вся эта цэпэпэйшина? Правда, и Нуитка тоже не нужна, мне просто было интересно. Но вместо ответа я получил классику жанра.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 12:36 
> Для того, чтобы написать простенький скрипт не надо контроллировать выделение и очистку памяти и всю эту сишную галиматью

В современном C++ для простеньких и средненьких скриптов делать этого тоже не надо. C98++ ≠ C++!


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 28-Сен-18 23:52 
Для Питона это. Для Руби - Кристал. А для JS что-то такое есть?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 00:04 
js быстрее пайтона, поэтому разница с нативом не будет настолько значительной, но уровень поддержки существующего кода заметно снизится

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 00:09 
Вы делали тесты с pypy ?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним84701 , 29-Сен-18 12:59 
> js быстрее пайтона,

И мягче, ага. А реализации еще и фиолетовее.
> поэтому разница с нативом не будет настолько значительной,

Так вот оно все как на самом деле!
А глупый гугл развивает свой JS-движок V8 (с JIT)  уже более десятка лет (обошелся гуглу, скорее всего, совсем не в один десяток миллионов). Как впрочем мозилловцы и МС тоже стараются не сильно отставать (и там тоже совсем не полу-студенческие/академические реализации с соотв. "бюджетом", как у того же PyPy).
Ну так что взять с недалеких корпораций, сами виноваты -- забыли проконсультироваться на опеннете :)


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 15:38 
Ээ? Вы вообще поняли, что я не обсираю JS, а наоборот?
Сравниваем как раз скорость возможного натива и существующих JIT (который всё-таки медленнее натива), так что о чем речь вообще?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним84701 , 29-Сен-18 17:20 
> Ээ? Вы вообще поняли, что я не обсираю JS, а наоборот?

Да, отлично понял. А  вы что, решили что я его "защищаю" или нахваливаю? Отнюдь.

> Сравниваем как раз скорость возможного натива и существующих JIT (который всё-таки медленнее
> натива), так что о чем речь вообще?

Речь о сравнении теплого с мягким же - спецификаций ЯП, вместо их конкретных реализаций.

Ну и обычном нахваливании ЖСниками предмета своего обожания -- при этом, очень тактично умалчивается, что шустрость появилась только после вбухивания миллионов в реализацию JIT:
https://web.archive.org/web/20080608014619/http://shootout.a...

https://web.archive.org/web/20060924085748/http://shootout.a...


1.0    D Digital Mars #2     0.66    13,116    665
1.1    C gcc #2     0.73    12,984    712
1.2    Lisp SBCL     0.83    61,332    815
1.6    C++ g++ #2     1.06    14,464    775
1.7    Pascal Free Pascal #2     1.10    13,032    729
1.7    OCaml     1.15    44,796    524
1.9    Clean     1.28    43,340    818
2.2    C++ g++     1.45    25,404    555
2.5    BASIC FreeBASIC #3     1.64    13,184    620
2.6    SML MLton     1.74    39,788    821
3.7    C# Mono #2     2.44    24,976    711
4.1    Python #3     2.69    45,528    272
4.1    Eiffel SmartEiffel     2.72    53,144    590
...
52    Erlang HiPE #2     34.37    319,084    436
54    Haskell GHC     35.54    486,224    478
110    JavaScript SpiderMonkey     73.24    152,276    289


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 19:53 
1. Сравниваем конкретные реализации: Питон, официальный обыкновенный vs Node.js/V8.
2. При чем тут какое-то умалчивание и какая разница, кто что вбухал, если оно на текущий момент именно такое?
Искренне не понимаю, какая нам сейчас разница, что там было в 2006 или 2008. Или вбухивание денег в технологию ставит на ней крест?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним84701 , 29-Сен-18 20:48 
> 1. Сравниваем конкретные реализации: Питон, официальный обыкновенный vs Node.js/V8.

Питон - это ЯП. Есть СPython (типа, эталонная реализация), PyPy, Jython, IronPython, Stackless? Какую объявить официальной и на основе чего?

> 2. При чем тут какое-то умалчивание и какая разница, кто что вбухал, если оно на текущий момент именно такое?

При том, что  если JS "разгоняется" только за многие тонны бабла, то о каких-то особых преимуществах или "заслугах" самого языка (точнее, его структуры/семантики) в этой области ("быстродействие" ака "скорость") вряд ли можно говорить серьезно?

> Искренне не понимаю, какая нам сейчас разница, что там было в 2006
> или 2008. Или вбухивание денег в технологию ставит на ней крест?

С таким подходом можно объявить Теслу первым в мире автомобилем, позволяющим выходить в космос. А еще самым быстрым среди атмосферников -- развивает вторую космическую, как-никак …



"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 23:15 
> Какую объявить официальной и на основе чего?

Странный вопрос. Разумеется, официальная = эталонная, самая распространенная, которая имеет отношение лично к Гвидо. CPython.

> При том, что  если JS "разгоняется" только за многие тонны бабла

Скорее за счет конкуренции, которой до прихода Хрома практически не было. Пришел Гугл - зашевелились остальные. Вон JS в Firefox местами обгоняет V8, в который Гугл вложили "тонну бабла".
Плюс появление веб-приложений сподвигло к оптимизациям и улучшениям.
JS сейчас такой какой есть именно благодаря суровой конкурентной буре.

> о каких-то особых преимуществах или "заслугах" самого языка (точнее, его структуры/семантики) в этой области ("быстродействие" ака "скорость") вряд ли можно говорить серьезно?

Очень странная претензия к существующей технологии. Типа в Питон ничего никто не вливал и у него ноль спонсоров? На заметку: https://www.python.org/psf/sponsorship/sponsors/
Да и кого это всерьез волнует? Вот есть Нода, есть CPython. Выбираем по тому, что имеется сейчас и что работает как нам надо.

> можно объявить Теслу первым в мире автомобилем, позволяющим выходить в космос

Еще более странная аналогия. Тесла в космосе не может ничего кроме как находиться
Сейчас JS - один из быстрейших скриптовых языков. Факт. А всё остальное - словесная чепуха.


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 01-Окт-18 10:47 
вот именно по этому смысла нет. Компилятору будет очень сложно обогнать гугломазиловский jit который они десятилетиями развивают.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 00:08 
А мне интересно, можно ли nginx подключить к такому бинарю web-сервера.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено kai3341 , 29-Сен-18 02:10 
> А мне интересно, можно ли nginx подключить к такому бинарю web-сервера.

Идея прикольная, реальная, но бесполезная. Узкое место web-приложения -- БД (проблему усугубляет еб***ная ORM. Сначала мы вводим абстракции, а потом героически выпиливаем) и сокет


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено BrainFucker , 29-Сен-18 09:18 
> А мне интересно, можно ли nginx подключить к такому бинарю web-сервера.

Ну простейший вариант CGI, там пофиг на чём написано, хоть на баше. FCGI наверное тоже можно. Интересно Flask и Django компилятся?


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 12:41 
Я как то видел, код админки django обработанную нюткой, но версия старая запускать не пробовал

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 03:02 
Судя по бенчмаркам, довольно быстрая штука.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Космополитан , 29-Сен-18 03:11 
Кстати вы знали что автор либы немец, а его жена русская, и либа звучит как "нютка" и посвящена его жене Анне, которую ласково зовут Анютка, сокращённо это будет нютка, но на английском языке это сложно написать поэтому написано нуитка

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено BrainFucker , 29-Сен-18 09:15 
> но на английском языке это сложно написать поэтому написано нуитка

Niutka было бы ближе по звучанию.


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено macfaq , 29-Сен-18 09:29 
Логичнее было бы увидеть Niutka.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено trunk , 29-Сен-18 17:05 
А ей понравится , что она "ни утка" ?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено macfaq , 30-Сен-18 20:15 
> А ей понравится , что она "ни утка" ?

Главное, что не гусыня.


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 06:28 
А что там тредами? Все так же печально как в самом Python? Совместимость жеж)))

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Грусть , 29-Сен-18 07:58 
> Си-типов, включая int и str
> str

Шо?


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 08:38 
Nuitka предоставляет кучу внутренних типов, которые используются для формирования кода на Си.

constant_builtin_types = (
    int,
    str,
    float,
    list,
    tuple,
    set,
    dict,
    slice,
    complex,
    xrange,
    NoneType,
)


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 08:56 
There is a lot of ground to cover, with more C types to come, and all of them needing specialized helpers. But as soon as e.g. int, str are covered, many more programs are going to benefiting from this.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 08:44 
А может проще сразу на C++ написать? Так-то питон гораздо уродливее и костыльнее

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено A.Stahl , 29-Сен-18 09:17 
Ну кто-то не знает плюсы.
Я, например, не знаю Яву (и не хочу знать), поэтому вынужден писать под Андроид на Qt+C++. Хотя в терминах Андроид это жуткий костыль.
Вот и эта штука для питонистов которым не нужен С++.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено пох , 29-Сен-18 09:28 
так пишите, кто не дает? Только вы ж ничего не напишете, кроме ху%ловрот.

а эта хрень для тех, кто переписывать весь мир на c++ не собирается, а конкретное уже написанное глюкало хочется сделать попроворнее.


"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 15:40 
Вы же не предлагаете писать ТОЛЬКО на C++ или ТОЛЬКО на *любой компилируемый язык*?

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 23:41 
Я написал то что написал, фантазии оставьте при себе

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено topin89 , 01-Окт-18 01:02 
Если это не троллинг, то разверни мысль. В каких ситуациях код на C++ красивее и практичнее? Для всякой битовой арифметики я ещё могу согласиться. А в остальном, доказательства или трепло.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 09:20 
Это c++ уродливый. А python cool.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 03-Окт-18 21:04 
Просто попробуйте Golang и все пройдет.

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено Аноним , 29-Сен-18 22:56 
Для того что бы возненавилить JS или Python, достаточно выучить любой вменяемый компилируемый язык, сделать что-то сложное и поддерживать его несколько лет...
Но тем не менее стоимость таких разработок (как минимум на первом этапе) говорит в пользу этих "недоязыков"...
Так что как не прискорбно, от этого не уйти и приходиться пилить всякие нуитки и джиты ...
В общем респект и уважуха автору)

"Выпуск Nuitka 0.6.0, компилятора для языка Python "
Отправлено a3k , 01-Окт-18 13:17 
>Так что как не прискорбно, от этого не уйти и приходиться пилить всякие нуитки и джиты ...

Это нужно для матана, где прототипы часто пилятся на Python. Если после этого его не нужно будет перепиливать на какой-нибудь C++ - вообще счастье.