Codon - быстрый компилятор Python
От: wl. Россия  
Дата: 14.03.23 20:40
Оценка:
https://github.com/exaloop/codon

пишут, что создали компилятор для Python, и скомпилированный код в 10-100 раз быстрее, чем на на обычном питоне.
И сам компилятор вроде как очень быстро компилит.

думаю, может тоже влиться в мейстрим, и таки изучить этот язык?
Re: Codon - быстрый компилятор Python
От: Pzz Россия https://github.com/alexpevzner
Дата: 14.03.23 21:53
Оценка: +1 -1
Здравствуйте, wl., Вы писали:

wl.>думаю, может тоже влиться в мейстрим, и таки изучить этот язык?


Зачем нужен Питон, если есть Go?
Re: Codon - быстрый компилятор Python
От: cppguard  
Дата: 14.03.23 23:07
Оценка: +2
Здравствуйте, wl., Вы писали:

wl.>пишут, что создали компилятор для Python, и скомпилированный код в 10-100 раз быстрее, чем на на обычном питоне.


While Codon supports nearly all of Python's syntax, it is not a drop-in replacement, and large codebases might require modifications to be run through the Codon compiler. For example, some of Python's modules are not yet implemented within Codon, and a few of Python's dynamic features are disallowed.


Правильно будет сказать, что создали очередной "ускоритель" для какого-то узкого подмножества питона.
Re: Codon - быстрый компилятор Python
От: DiPaolo Россия  
Дата: 15.03.23 03:03
Оценка:
Любопытно, что он бесплатный лишь для некоммерческого использования (https://docs.exaloop.io/codon/general/faq#is-codon-free):

Codon is and always will be free for non-production use. That means you can use Codon freely for personal, academic, or other non-commercial applications.

Патриот здравого смысла
Re[2]: Codon - быстрый компилятор Python
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 15.03.23 03:28
Оценка:
Здравствуйте, cppguard, Вы писали:

C>Правильно будет сказать, что создали очередной "ускоритель" для какого-то узкого подмножества питона.


Ага. Раньше ускоряли узкие места с помощью сишного Cython, теперь будут на чуть другом, более пиноновском.
Re[3]: Codon - быстрый компилятор Python
От: cppguard  
Дата: 15.03.23 06:23
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Ага. Раньше ускоряли узкие места с помощью сишного Cython, теперь будут на чуть другом, более пиноновском.


В код не смотрел, но по описанию могу предположить, что там обычный транслятор из Python в LLVM IR с выводом типов с помощью алгоритма Хиндли — Милнера. Если же там требуют явно указывать типизацию, то это вообще провал, потому что тогда непонятно, в чём отличие от Cython.
Re[2]: Codon - быстрый компилятор Python
От: Философ Ад http://vk.com/id10256428
Дата: 15.03.23 06:29
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Зачем нужен Питон, если есть Go?


В таком виде, как они сейчас, оба не нужны: у обоих нет перегрузки функций, а питон ещё и с динамической типизацией.
Всё сказанное выше — личное мнение, если не указано обратное.
Re[4]: Codon - быстрый компилятор Python
От: Doom100500 Израиль  
Дата: 15.03.23 06:56
Оценка: +1
Здравствуйте, cppguard, Вы писали:

C>Здравствуйте, Nuzhny, Вы писали:


N>>Ага. Раньше ускоряли узкие места с помощью сишного Cython, теперь будут на чуть другом, более пиноновском.


C>В код не смотрел, но по описанию могу предположить, что там обычный транслятор из Python в LLVM IR с выводом типов с помощью алгоритма Хиндли — Милнера. Если же там требуют явно указывать типизацию, то это вообще провал, потому что тогда непонятно, в чём отличие от Cython.


В код смотреть и не надо:

About
A high-performance, zero-overhead, extensible Python compiler using LLVM

Спасибо за внимание
Re[2]: Codon - быстрый компилятор Python
От: wl. Россия  
Дата: 15.03.23 16:06
Оценка:
Здравствуйте, cppguard, Вы писали:

C>Правильно будет сказать, что создали очередной "ускоритель" для какого-то узкого подмножества питона.


ага, так и есть. Попробовал на боте телеграмма, не может найти модули.
даже разбираться, как пофиксить неохота

(chatgpt-telegram-bot) wl@v1425001:~/chatgpt-telegram-bot$ ~/.codon/bin/codon run main.py
main.py:1:8-15: error: no module named 'logging'
main.py:4:6-12: error: no module named 'dotenv'
openai_helper.py:19:1: error: unexpected dedent
telegram_bot.py:28:1: error: unexpected dedent
main.py:12:5-16: error: name 'load_dotenv' is not defined
main.py:15:5-129: error: no module named 'logging'
main.py:24:9-113: error: no module named 'logging'
main.py:71:21-33: error: name 'OpenAIHelper' is not defined
main.py:72:20-39: error: name 'ChatGPT3TelegramBot' is not defined
main.py:73:5-23: error: no module named 'telegram_bot'
(chatgpt-telegram-bot) wl@v1425001:~/chatgpt-telegram-bot$ mc

(chatgpt-telegram-bot) wl@v1425001:~/chatgpt-telegram-bot$ python main.py
2023-03-15 16:03:57,801 — telegram.ext._application — INFO — Application started

Re[3]: Codon - быстрый компилятор Python
От: yenik  
Дата: 18.03.23 18:50
Оценка:
Ф>В таком виде, как они сейчас, оба не нужны: у обоих нет перегрузки функций

Почему это важно?
Re[4]: Codon - быстрый компилятор Python
От: ути-пути Россия  
Дата: 26.03.23 10:27
Оценка:
Здравствуйте, yenik, Вы писали:

Y>Почему это важно?


Потому что позволяет не плодить имена для, по сути, одного и того же. Писать без перегрузки, безусловно, можно.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[5]: Codon - быстрый компилятор Python
От: yenik  
Дата: 27.03.23 11:42
Оценка:
Pzz>>>>Зачем нужен Питон, если есть Go?

Ф>>>В таком виде, как они сейчас, оба не нужны: у обоих нет перегрузки функций


Y>>Почему это важно?


УП>Потому что позволяет не плодить имена для, по сути, одного и того же. Писать без перегрузки, безусловно, можно.


Это дело вкуса и не причина говорить, что Python и Go вообще не нужны.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.