The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск Cython 0.27, компилятора для языка Python "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от opennews (??) on 02-Окт-17, 12:19 
Состоялся (https://www.mail-archive.com/python-announce-list@pytho...) релиз Cython 0.27 (http://cython.org/) (следом сразу вышло корректирующее обновление 0.27.1), компилятора для языков Python  и Cython. Язык Cython является расширенным вариантом языка Python, нацеленным на упрощение интеграции с кодом на языке Си и позволяющим создавать расширения на языке Си для проектов на языке Python так же просто, как писать код на Python. Cython расширяет возможности Python средствами для прямого вызова функций на языке Си, поддерживает определение переменных с типами языка Си и позволяет компилировать итоговый код на языке Cython в представление на языке Си, которое затем собирается штатным системным компилятором.


В новом выпуске реализовано большинство новых возможностей ветки Python 3.6 (https://www.opennet.me/opennews/art.shtml?num=45755), в том числе появилась поддержка аннотаций для передачи информации о типах переменных (PEP 484/526), возможность определения асинхронных генераторов (PEP 520) и  асинхронной обработки списковых включений (PEP 525, async comprehension), автоматическая генерация "__richcmp__()" из "__eq__()", поддержка ссылок на объекты Python  в классах C++, режим компиляции PGO в среде Jupyter Notebook (http://jupyter.org/). Код инициализации модулей приведён в соответствие с поведением CPython 3.5+.

URL: https://www.mail-archive.com/python-announce-list@pytho...
Новость: http://www.opennet.me/opennews/art.shtml?num=47307

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Аноним (??) on 02-Окт-17, 12:19 
> и позволяет компилировать итоговый код на языке Cython в представление на языке Си, которое затем собирается штатным системным компилятором.

Так Vala не один такой, который транслирует в Си.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Выпуск Cython 0.27, компилятора для языка Python "  –6 +/
Сообщение от AS (??) on 02-Окт-17, 13:40 
да все интерпретаторы посути этим в реалтайме и занимаются
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Выпуск Cython 0.27, компилятора для языка Python "  –5 +/
Сообщение от AS (??) on 02-Окт-17, 13:50 
только очень странно - ни толковых примеров ненашел у них на ресурсе как бинарь из .py получить.
пользуюсь http://nuitka.net/ - прирост просто невзгребенный особенно на б****коде
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Andrey Mitrofanov on 02-Окт-17, 14:07 
> только очень странно - ни толковых примеров ненашел у них на ресурсе

В школе ещё поиск в интернетах не проходили?

https://duckduckgo.com/?q=man+cython
   1-->
      1.1--> Documentation => Basic Tutorial => http://docs.cython.org/en/latest/src/tutorial/cython_tutoria...
      1.2--> ... Overview  :
[Cython] is a programming language that makes writing [B
]C extensions for the Python language as easy as Python itself.

икстеншенс, карл...

> как бинарь из .py получить.

https://duckduckgo.com/?q=cython+standalone+binary
   2-->https://github.com/cython/cython/wiki/EmbeddingCython

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "Выпуск Cython 0.27, компилятора для языка Python "  –4 +/
Сообщение от AS (??) on 02-Окт-17, 14:28 
школу я не закончил, выгнали за плохое поведение и прогул уроков истории. спустя 5 лет прояснилось, что и нехрен было на неё ходить. всё переписали. простите это я так, правда наболело.
а если по сабжу то Нуитка +100500 проще, по ссылкам сходил, всё равно ничего не понял.
буду и дальше на Нуитке сидеть - там всё понятно
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от omnomnin on 02-Окт-17, 15:56 
бть, нуитка и cython совсем разные вещи, созданные с разными целями

>буду и дальше на Нуитке сидеть - там всё понятно

буду и дальше на корточках у подъезда с семками и ягой сидеть - там всё понятно
//fixed

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от freehck email(ok) on 02-Окт-17, 17:38 
Nuitka - это вроде бы просто компилятор питона, а Cython - это походу другой язык по синтаксису обратно совместимый с Python, но поддерживающий ещё кучу всяких ништяков вроде C data types и т.п.

Не, я конечно не уверен, но очень похоже на то, что Вы читать не умеете.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

9. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Аноним_ on 02-Окт-17, 17:50 
> Не, я конечно не уверен, но очень похоже на то, что Вы читать не умеете.

он-то прочитал что тут написано - "выпуск компилятора для языка python".

И справедливо заметил, что компилятор этот какой-то загадочный, как им пользоваться - хрен поймешь, а вместо нормальной документации на его сайте предлагают орейлевскую книжку купить, чтобы ознакомиться с их шедевром.

А что он поддерживает еще какие-то навороты помимо питона - так ни ему, ни мне неинтересно.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от freehck email(ok) on 02-Окт-17, 18:25 
>> Не, я конечно не уверен, но очень похоже на то, что Вы читать не умеете.
> он-то прочитал что тут написано - "выпуск компилятора для языка python".

А новость прочитать? "Cython является расширенным вариантом языка Python"... То же мне. Чукча, и гордится этим.

> И справедливо заметил, что компилятор этот какой-то загадочный, как им пользоваться -
> хрен поймешь, а вместо нормальной документации на его сайте предлагают орейлевскую
> книжку купить, чтобы ознакомиться с их шедевром.

Что до документации, так я час назад туда заходил поглядеть, что и как. Доков завались, и по ним всё ясно даже мне, не питонисту ни разу. А вы тут заливаете, что хрен поймёшь, как пользоваться. Нужно просто скормить cython-у pyc-файл исходной питоновской программы, и он всё скомпилирует как надо.

> А что он поддерживает еще какие-то навороты помимо питона - так ни ему, ни мне неинтересно.

А что вам, чукчам, вообще может быть интересно?

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от Аноним84701 (ok) on 02-Окт-17, 18:33 
> вместо нормальной документации на его сайте предлагают орейлевскую  книжку купить, чтобы ознакомиться с их шедевром.

Странно. У меня показывает:


Documentation
--------------------
Cython Documentation
The Cython Wiki.
The Cython FAQ (and the older Pyrex FAQ)

External resources:
Cython - A Guide for Python Programmers, book by Kurt W. Smith, O'Reilly 2015
Cython: The best of both worlds, article by Stefan Behnel, Robert Bradshaw et al., IEEE 2011
SciPy 2009 proceedings (pdf): Cython Tutorial; Fast Numerical Computations with Cython

http://docs.cython.org/en/latest/
Навскидку -- довольно неплохая и подробная документация.  Есть "getting started", "user guide", "reference guide", куча примеров ... на опеннет опять пакеты из другой реальности приходят?

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от Аноним84701 (ok) on 02-Окт-17, 18:37 
> справедливо заметил, что компилятор этот какой-то загадочный, как им пользоваться - хрен поймешь,

Что там загадочного -- *рен поймешь.  Все отлично описано, нужная информация находится  быстро.
Получить бинарь? Cмотрим:
http://docs.cython.org/en/latest/src/reference/compilation.h...
> gcc -shared -pthread -fPIC -fwrapv -O2 -Wall -fno-strict-aliasing \
>      -I/usr/include/python2.7 -o yourmod.so yourmod.c


% cat hello.py
print "Hello, World!"
% cython hello.py --embed
% gcc -pthread -fPIC -fwrapv -O2 -Wall -fno-strict-aliasing -I/usr/include/python2.7 hello.c -L/usr/lib -lpython2.7
% ./a.out
Hello, World!

На все (вместе с установкой cython) - от силы 10 минут.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "Выпуск Cython 0.27, компилятора для языка Python "  –3 +/
Сообщение от Аноним (??) on 02-Окт-17, 20:13 
> На все (вместе с установкой cython) - от силы 10 минут.

ну, я не знаю, сколько он ставится, конечно, но с той же нюткой на все остальное требуется _секунд_ десять  - примерно на втором клике по его сайту получаешь пример использования.
Так что вполне понятно, на что аноним жалуется, к хорошему привыкаешь быстро.

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Выпуск Cython 0.27, компилятора для языка Python "  –2 +/
Сообщение от AS (??) on 02-Окт-17, 20:27 
Спасибо большое !!!!! просто так получается, что я пишу бизнес-логику верхнего уровня и работы там столько , что мне приходится рассматривать компилятор как инструмент(утилиту) с простым интерфейсом с 1й кнопкой "скомпилировать". вот если бы так доступно у них был был этот пример на сайте
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

15. "Выпуск Cython 0.27, компилятора для языка Python "  –2 +/
Сообщение от freehck email(ok) on 02-Окт-17, 21:53 
> я пишу бизнес-логику верхнего уровня и работы там столько, что

что можно только удивиться, почему Вы пишете её на питоне
язык может и неплохой, но библиотеки и сообщество... ох, ну в общем, наркоманы для наркоманов писали

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

16. "Выпуск Cython 0.27, компилятора для языка Python "  –1 +/
Сообщение от AS (??) on 02-Окт-17, 22:17 
полностью соглашусь но не я тому виной когда пришёл так уже было.
но мы справимся !
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

17. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Vkni (ok) on 03-Окт-17, 04:57 
> что можно только удивиться, почему Вы пишете её на питоне
> язык может и неплохой, но библиотеки и сообщество... ох, ну в общем,
> наркоманы для наркоманов писали

Ну не знаю насчёт языка - неужели нельзя было сделать переключение в одномерный синтаксис, как в Хаскеле? А lambda, которая разительно отличается от функции без имени, чего стоит.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

18. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от freehck email(ok) on 03-Окт-17, 09:43 
>> что можно только удивиться, почему Вы пишете её на питоне
>> язык может и неплохой, но библиотеки и сообщество... ох, ну в общем,
>> наркоманы для наркоманов писали
> Ну не знаю насчёт языка - неужели нельзя было сделать переключение в
> одномерный синтаксис, как в Хаскеле? А lambda, которая разительно отличается от
> функции без имени, чего стоит.

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

Но за синтаксис я критикивать язык не намерен. В конце концов мне очень даже по нраву Perl, где тоже много синтаксического сахару, но в основном к месту или просто для красоты. Потому же я не критикую Scala: синтаксис вроде бы уродский, но вдруг там хорошие библиотеки? Я с ними ещё не ознакомился, а это для конструктивной критики необходимо.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

20. "Выпуск Cython 0.27, компилятора для языка Python "  –1 +/
Сообщение от AS (??) on 03-Окт-17, 12:25 
модули то может и глючные где но я не заметил. а вот то, что версия модуля может вести себя уже чуть не так при установке в др. дистре - ещё 1 из причин почему компилирую ВСЕ используемые модули + std Питон и передаю заказчику в собранном виде
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

21. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от freehck email(ok) on 03-Окт-17, 14:59 
> модули то может и глючные где но я не заметил

Ну вот я сейчас занимаюсь переписыванием сборочных сценариев, и вижу, что во всех местах, где установка организована через python, следом идёт вызов скрипта touch-installed.sh. Оказалось, это связано с тем, что в дефолтном питоновском shutil тупо нет нормальной функции для копирования дерева каталогов: те, что есть, копируют также stat-ы (проще говоря время у исходных файлов дублируют на новые).

Вот ловите ссылку на эту историю (я там правда в начале малость понапутал, ибо болел, но в целом картина правильная):
https://www.opennet.me/openforum/vsluhforumID3/112203.html?n...

С тех пор я нашёл ещё много интересных фишечек. Например, в генерируемый python-скриптом конфиг стал попадать какой-то невразумительный мусор из-за того, что в этом скрипте использовался модуль yum (только не спрашивайте меня пожалуйста, какому чудику пришло в голову написать скрипт для генерации конфига с использованием yum, а не то я материться буду). Оказалось, что этот мусор был информацией, которую yum отправляет на stdout. Причём такое чувство, что не всей. Пришлось писать обход, чтобы заглушить вывод вообще на данном участке кода.

Но если коротко, то с питоном всегда одна беда: он сляпан таким образом, что очень часто удивляет своим неправильным поведением в местах, где ты и подумать не мог, что там может быть что-то не так.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

22. "Выпуск Cython 0.27, компилятора для языка Python "  –1 +/
Сообщение от AS (??) on 03-Окт-17, 15:32 
Шаманить с YUM из Питона конечно очень сомнительный костыль, поэтому и повторюсь -
чтоб получить стабильно работающий софт мне и приходится ВСЁ ложить в 1 папку и компилить.
а автоустановка зависимостей на клиенте -невыполнимая в Питон задача
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

23. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от freehck email(ok) on 03-Окт-17, 17:11 
Ну, этим-то Вы никого не удивите. Omnia mea mecum porto. И так делает любой вендор, который пишет под unix-системы. Была когда-то попытка как-то упростить это дело и систематизировать в виде LSB, но провалилась: таскать всё с собой -- это более гибкий для вендора механизм, нежели подстраиваться под LSB.
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

25. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Vkni (ok) on 05-Окт-17, 04:32 
> Ага. А ещё имхо язык чрезвычайно перегружен синтаксическим сахаром. Тем не менее,
> синтаксис - это штука, к которой ещё можно привыкнуть.

Ну синтаксис там, вообще-то практически Хаскельный. Т.е. это синтаксис 2-го поколения относительно Алголо-подобных языков, растущий из статьи Ландина про 700 новых языков.

Но создатели Питона - это "чукчи-писатели", поэтому более-менее естественно то, что всю дискуссию они пропустили. И варианта перевода в одномерный синтаксис, как у "оторванных от жЫзнЕ академиков", у них нет.

> но вдруг там хорошие библиотеки? Я с ними ещё не ознакомился,
> а это для конструктивной критики необходимо.

Ну numpy - это патентованное гoвнo. См, к примеру, совершенно несвязанные модули матриц и линейной алгебры или серии дублированных функций "без учёта NaN/с учётом NaN" в модуле статистики.

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

26. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от freehck email(ok) on 05-Окт-17, 15:20 
>> Ага. А ещё имхо язык чрезвычайно перегружен синтаксическим сахаром. Тем не менее,
>> синтаксис - это штука, к которой ещё можно привыкнуть.
> Ну синтаксис там, вообще-то практически Хаскельный. Т.е. это синтаксис 2-го поколения относительно
> Алголо-подобных языков, растущий из статьи Ландина про 700 новых языков.

Я не знаю, что такое "синтаксис 2-го поколения относительно Алголо-подобных языков". Для меня это звуичт дико. Я просто знаю много языков, и сужу о том, сколько крутых штук я смогу легко сделать, благодаря этим языкам.

Большое количество сахара почти всегда воспринимается как минус: если язык заставляет слишком много всего помнить, это неприятно.

> Но создатели Питона - это "чукчи-писатели", поэтому более-менее естественно то, что всю
> дискуссию они пропустили. И варианта перевода в одномерный синтаксис, как у
> "оторванных от жЫзнЕ академиков", у них нет.

Хоть я тоже не видел дискуссию, но про "оторвоннэх от жызне окодемиков" поддерживаю целиком и полностью.

>> но вдруг там хорошие библиотеки? Я с ними ещё не ознакомился,
>> а это для конструктивной критики необходимо.
> Ну numpy - это патентованное гoвнo. См, к примеру, совершенно несвязанные модули
> матриц и линейной алгебры или серии дублированных функций "без учёта NaN/с
> учётом NaN" в модуле статистики.

Верю, кого этим удивить: академический код вообще довольно часто размножается дублированием/копипастами. У учёных, которые не айтишники (в редком, хорошем смысле этого слова), просто нет навыков приведения информационных систем в порядок, вот и ваяют кто во что горазд.

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

27. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Andrey Mitrofanov on 05-Окт-17, 15:31 
>>> Ага. А ещё имхо язык чрезвычайно перегружен синтаксическим сахаром. Тем не менее,
>>> синтаксис - это штука, к которой ещё можно привыкнуть.
>> Ну синтаксис там, вообще-то практически Хаскельный. Т.е. это синтаксис 2-го поколения относительно
>> Алголо-подобных языков, растущий из статьи Ландина про 700 новых языков.
> Я не знаю, что такое "синтаксис 2-го поколения относительно Алголо-подобных языков". Для
> меня это звуичт дико. Я просто знаю много языков, и сужу
> о том, сколько крутых штук я смогу легко сделать, благодаря этим
> языкам.

В историческом %) разрезе, после маш.кодов был ассемблер, потом фортран, а потом "началось": алголы, лиспы и пр. новейшая :))) история. То есть, студентам наверное так вот прямо говорят!, алгол -> "второе покление" ЯВУ.

При чём хаскель к алголу (и питону), я пожалуй не скажу. Нужны более серьёзные академ.знания, чем мои.  Археологи, педагоги в доме есть??

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

28. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Vkni (ok) on 06-Окт-17, 05:03 
> При чём хаскель к алголу (и питону), я пожалуй не скажу. Нужны
> более серьёзные академ.знания, чем мои.  Археологи, педагоги в доме есть??

https://blog.ngzhian.com/the-next-700-programming-languages-...

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

19. "Выпуск Cython 0.27, компилятора для языка Python "  +/
Сообщение от Виндовод on 03-Окт-17, 11:03 
Я думал ситон это реализация языка питона.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

24. "Выпуск Cython 0.27, компилятора для языка Python "  +1 +/
Сообщение от Аноним (??) on 03-Окт-17, 22:36 
Нет, эталонная реализация называется CPython.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру