LINUX.ORG.RU

Стоит ли переписывать проект с Go на Rust?

 ,


0

5

Вот думаю, а не переписать бы мне out-of-tree на Rust? Последний я в некоторой степени знаю, но полноценных самостоятельных проектов пока не было. Пока проект не разжирел сильно (всего две с половиной тысяч строк), поэтому переписывание само по себе не будет слишком затратно по времени.

Какие преимущества я получу?

С какими проблемами я столкнусь?

Deleted
Ответ на: комментарий от slaykovsky

Как я понимаю, прога ТС просто клей. Сама по себе она ничего не делает. То есть производительность роли не играет. А значит питон.

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

Go, тем более Rust, для других задач

Rust явно для других, писать на нём подобное надо либо из большой любви к языку, либо из-за страсти к мазохизму. Но для каких задач по-твоему Go?

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

WitcherGeralt ★★
()

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

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

Я хз зачем нужен Go. Гуглу видимо зачем-то нужен. Рекламируют как быстрый питон, но сомневаюсь что у 90% сбежавших на него с питона были такие нагрузки.

Я вот на питоне пишу скрипты. Зачем их переписывать на go - не ясно.

PS: зачем мне нужен Rust я знаю.

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

То есть производительность роли не играет. А значит питон.

Го как раз хорошо подходит чтобы не использовать питон.

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

Но это задача для скриптоты.

Когда-то давно, когда все компилируемые языки со статической типизации были только низкоуровневыми (как Си) – это имело значение.

Сейчас это более не актуально.

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

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

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

Это ты пишешь на питоне скрипты. Впрочем, многие пишут. Но в основном на питоне пишут веб-сервисы, можешь посмотреть вакансии и убедиться.

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

Си высокоуровневый если что. Можете оценить это лично пронаблюдав какую дичь выдаёт компилятор.

anonymous
()

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

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

Гуглу видимо зачем-то нужен

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

Возьмем тот же Rust, так там будет невменяемая Tokio лапша. Ни у кого нету на это дерьмо времени.

А в Go будет код, выглядящий как блокирующий код из 90-х, хотя это будет async, event-driven с низу до верху библиотеки.

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

Это понятно. Только при чём тут прога ТС и питон?

RazrFalcon ★★★★★
()

Вот думаю, а не переписать бы мне out-of-tree на Rust?

Советовал бы это делать только в качестве эксперимента и только если есть достаточно свободного времени

Какие преимущества я получу?

Опыт программирования на Rust, возможно более чистый код, возможно какую-то поддержку от Rust сообщества, возможно не придётся сталкиваться с какими-то проблемами Go в будущем

С какими проблемами я столкнусь?

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

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

Это те питонщики, которые не умеют в питон?

100%. Вероятно, в надежде, что это Питон такой мудрённый, а с Го они точно справятся. Лол

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

Go будет код, выглядящий как блокирующий код из 90-х

Да! Я когда вспервые это увидел, ничего не понял и был в ступоре. Где мой epoll, где select, вы что сдурели, как без них код писать?

WitcherGeralt ★★
()

Переписывай, конечно. Rust это идеальный язык программирования. Надо всё на нём переписать.

anonymous
()

Какие преимущества я получу?
С какими проблемами я столкнусь?

Если у тебя ответов нет на эти вопросы, то переписывать не стоит.

turtle_bazon ★★★★★
()

Если это вброс ради флейма, то слабовато. Лучше бы про Си спросил, я бы тебе объяснил насколько ненужно на него переписывать. А так пох. Только не забудь, ну, то что вам инопланетянам жизненно необходимо в таких случаях и вперёд. И с песней. Только это ведь не нужно. Ты бы лучше документировать свои поделия научился как следует. Чтобы интуитивно всё было. Ю-икс/ю-ай, типа, понимаешь ли.

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

append слайсу сделать уже не так тривиально как в Питоне

Еще бы, в питоне и слайсов то нет...

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

хотя бы одно преимущество Go перед питоном для скриптов

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

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

на Go ты получаешь самодостаточный экзешник

А потом понадобилось пару строчек подправить на серваке, опаньки. А исходники не можем найти, лол.

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

В 2019 каждый скрипт на гитхабе лежит? Извините, не скрипт, а проэкт!

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

А потом понадобилось пару строчек подправить на серваке

кто-то ещё использует мэннед серваки? в каменном веке чтоли? серваки сейчас пачками делаются в виртуалке по щелчку пальцами, с уже установленной федорой и докером.

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

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

Использует, еще и как. Не знаю в каком мире розовых стартапов вы находите всю эту хипстерию, но тут вам не там.

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

GO более хайповый и привлечет к проекту больше внимания

Я может не в тех кругах общаюсь, но слышу о ГО только на ЛОРе в основном от онанов.

Им кто то за пределами гугл-облака пользуется?

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

Поддержу справедливые укоры насчёт документации.

Deleted
()

Зачем? Обычно переписывают для фана, это хотя бы понятно. Но переписывать просто так…

Virtuos86 ★★★★★
()

Какие преимущества я получу?

С какими проблемами я столкнусь?

Не стоит переписывать этот проект с го на раст.

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

сомневаюсь что у 90% сбежавших на него с питона были такие нагрузки.

90% бегущих куда-либо сами не осознают зачем они туда бегут. Потому что ведут себя как стадо, ведомое очередным «козлом-провокатором» на «бойню».

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

Ну если они работают прогерами, то освоение модных технологий по-любому может стать плюсом в этой постоянно меняющейся отрасли

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

Не полностью, есть ещё как минимум ML, где у питона вообще конкуретнов нет.

Еще мелкие десктопные приложения на Go сложно, на питоне легко.

anonymous
()

Вижу, пошли сравнения питона с го) Короче, кроме ML, го не совсем и в вебе может его заменить. Мне (и не только мне) в разработке бэкенда, например, нужна нормальная ORM, миграции и т.п. Есть это для го? Gorm такой себе весьма, а альтернатив вменяемых у него фактически нет. Писать руками все запросы к базам можно, конечно, но тогда придется и мапперы писать руками, что скорость разработки замедлит ощутимо. В питоне есть Алхимия, которая в 100500 раз надежней, стабильней и удобней, чем Горм. Кто-то скажет, что в го не принято юзать ORM вообще. Ну ок. Но, если так, то, очевидно, го не является альтернативой питону, потому что нормально полноценно разрабатывать на нем API не получится.

dimuska139 ★★
()

Переписывать скрипт на Go в скрипт на Rust? Офигенная затея.

Какие преимущества я получу?

Можешь получить веселье от процесса.

С какими проблемами я столкнусь?

Есть вероятность не получить веселья.

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

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

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