LINUX.ORG.RU

Asciinema отказалась от языка программирования Go и вернулась к питону

 , ,


0

6

¬Ъ: http://blog.asciinema.org/post/and-now-for-something-completely-different/

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

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

Akamanah ★★★★★
()

мучительное несовершенство языка го и его инфраструктуры
в сочетании с отсутствием каких-либо значительных преимуществ

Очень странно. Предрекают участь убийцы похапе. Новый ультимативный мейнстримный язык. Лютый хайп, армия фанбоев (сам слушаю подкасты, но код не пишу).

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

outtaspace ★★★
()
Ответ на: комментарий от Sahas

Позволяет записывать терминал подобно видео. Крутая штука, на самом деле.

quantum-troll ★★★★★
() автор топика
Ответ на: комментарий от outtaspace

Go’s lack of versioned packages and central repository makes packaging cumbersome. For example, some distro packaging rules don’t like straight-from-github-master dependencies (understandable!) while at the same time they don’t like vendored (bundled) dependencies (also understandable) (Gentoo example).
Batteries included: argparse, pty, locale, configparser, json, uuid, http. All of these excellent modules are used by asciinema and are part of Python’s standard library. Python stdlib’s quality and stability guarantees are order of magnitude higher than of unversioned Go libs from Github (I believe discrete releases ensure higher quality and more stability).

В общем-то, по делу.

Solace ★★
()
Последнее исправление: Solace (всего исправлений: 1)

Note, that the above list applies specifically to asciinema recorder. There are great use cases for Go (like IPFS) and if I was to build system-level software, protocol implementation or any kind of network daemon (proxy for example) I’d definitely consider Go. Also, asciinema is a cli app distributed to end users. If you’re building in-house software that has to run only on single platform then many of the above points may become non-issue for you.

Ну, прост не подошло для них. А тут уже экстраполяции пошли на 100 лет.

anonymous
()

блин, а я думал изучать начать, а то питон хоть и мой любимый язык, однако, в многопотоке не радует (спасибо GIL-у за это). Ну ладно, найду что-нибудь другое. ЗЫ я знаю про другие интерпретаторы

Dred ★★★★★
()
Ответ на: комментарий от Dred

While Go definitely has its strengths (easy concurrency, runtime speed, startup speed, stand-alone binary), this project didn’t really benefit from any of these (and suffered from Go’s pain points). Here is a (not exhaustive) list of things that contributed to the decision of dropping Go for Python:

No need for concurrency or high speed here.

anonymous
()
Ответ на: комментарий от anonymous

А я что, против что сказал ? Я вообще не знаю зачем многопотоки могли понадобится (изредка пользуюсь сабжем уже пару лет)

Dred ★★★★★
()
Ответ на: комментарий от true_admin

Питон пыху уже пережил и сдавать позиций пока не собирается

Goury ★★★★★
()
Ответ на: комментарий от Lavos

И ненужно посчитало нужным отметиться?

SevikL ★★★★★
()
Ответ на: комментарий от outtaspace

Хайпа много, но немало и постов разочарованных в го потом всплывает.

pawnhearts ★★★★★
()

Да они не осилили просто, в чем и признаются, вы по ссылке сходите, причины почитайте.

mix_mix ★★★★★
()
Ответ на: комментарий от true_admin

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

pawnhearts ★★★★★
()
Ответ на: комментарий от pawnhearts

Более того, со второго питона многие не собираются уезжать.

Я бы сказал, что это не «более», а противоречит первому предложению.

Im_not_a_robot ★★★★★
()
Ответ на: комментарий от pawnhearts

асинхронный и использую. Только зачем на одном только питоне зацикливаться

Dred ★★★★★
()
Ответ на: комментарий от Oxdeadbeef

Там, где используют Rust, пистон мало годится.

Deleted
()

Крикуны про хипстоту хоть прочли бы статью, в которой ясно написано, что авторам не нужны основные преимущества Go: производительность и concurrency. А там, где всё это нужно, язык с успехом используют.

Deleted
()
Последнее исправление: romeo250501 (всего исправлений: 1)

Среди причин подобного поступка они называют мучительное несовершенство языка го и его инфраструктуры, в сочетании с отсутствием каких-либо значительных преимуществ для asciinema.

quantum-troll

not bad

umren ★★★★★
()
Ответ на: комментарий от outtaspace

Максимально простой, как джаваскрипт.

Проще же, жабаскрипт на нормальном уровне мало кто знает.

umren ★★★★★
()

Только сегодня пересобирал python 2.7.12 под слакой, про то, чтобы собирать go - даже речи не идёт, nodejs - и то популярнее.

menangen ★★★★★
()
Ответ на: комментарий от anonymous

В статье написано, что авторам программы это не нужно.

Deleted
()

Вот вам и ЯП общего назначения.

ritsufag ★★★★★
()
Ответ на: комментарий от menangen

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

Dred ★★★★★
()
Ответ на: комментарий от Dred

Более производительным

Тут вариантов, на самом деле немного и они все известны. Это rust, go, java, c/c++, всякий .net. Потом идёт экзотика типа haskell, ocaml, etc.

Лично мне ни один из вариантов не нравится :(. Но, наверно, ещё раз попробую освоить rust.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

ага, и я о том же, потому и го, хотя даже прочитал пару нелестных статей о нем, этот пост последней каплей оказался

ЗЫ мне и раст не нравится( А nim уже не выстрелит

Dred ★★★★★
()
Последнее исправление: Dred (всего исправлений: 1)
Ответ на: комментарий от menangen

Чисто ради многопоточности? Не из-за явовских библотек. И как, ты крутил? Мне говорили там есть баги которые годами не закрывают.

pawnhearts ★★★★★
()
Ответ на: комментарий от Dred

прочитал пару нелестных статей

А могли бы уже пройти тур и написать полезную утилиту.

этот пост последней каплей оказался

Го активно используют в рабочих решениях. Язык и инфраструктура развиваются, проблемы пытаются решить. Судить о языке по паре нелестных статей и опыте людей, написавших 900 строк кода сначала на питоне, а потом на го - не стоит. Сам я на го не пишу, но для серверных решений и утилит язык более чем пригоден.

Weres ★★★
()
Ответ на: комментарий от Weres

написать полезную утилиту

написал на питоне

Го активно используют в рабочих решениях

да, я знаю, это изначально и заинтересовало. Суть в том что мне не очень нравится дизайн языка, сначала он выглядел как некий производительный питон, а сейчас скорее JS. Хотя вероятно я ошибаюсь (пока нет времени проверить).

Dred ★★★★★
()

Casting int32 to int64 to… gets old fast.
if err != nil { gets old even faster.

Поясните, позязя, что он тут имеет в виду?

anonymous
()
Ответ на: комментарий от anonymous
    Кастование int32 к int64 к… становится старым быстро.
    if err != nil { становится старым ещё быстрее.

Быстро забывают они про эти штуки, видимо.

anonymous
()
Ответ на: комментарий от true_admin

Если это не что-то глобальное - есть классический вариант искать bottlenecks в коде на питоне и переписывать их в виде модулей на C. Или даже на cython/pyrex/etc.

pawnhearts ★★★★★
()
Ответ на: комментарий от Dred

Кстати, nim самая годнота из всего этого с виду. Жаль, если правда не выстрелит.

pawnhearts ★★★★★
()
Ответ на: комментарий от theNamelessOne

Слишком часто приходится это делать (кастовать, проверять ошибки), что это сильно приедается.

Да уж, зачем на ошибки проверять :)

с кастингом не понятно зачем они из 32 в 64 перегоняют.

umren ★★★★★
()
Ответ на: комментарий от Dred

сначала он выглядел как некий производительный питон, а сейчас скорее JS

Хм. Всё вообще не так. Насчет дизайна языка у меня противоречивые чувства. Как языка общего назначения. Для некоторых типов приложений он вполне себе.

pawnhearts ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.