LINUX.ORG.RU
ФорумTalks

Какие новые и полезные, известные, или хотя бы красивые программы написаны на Расте?

 , , , ,


2

7

Сабж. Вот когда создали С, то сразу на нём переписали Юникс, чтобы он стал портабельным, и с тех пор на нём созданы миллионы программ, драйверов и почти все операционные системы. Когда был создан PHP, он быстро заместил Perl в веб-приложениях и на сегодняшний день он крутится на 70% веб-серверов.

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

Где новые базы данных, IDE, DE, CAD-ы, графические, видео и аудио редакторы на расте? Игровые движки? Кодеки? Чтобы скептики прониклись мощью и безусловными преимуществами сабжа и уверовали в него?

★★★★★

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

C 77.8%
Rust 10.8%

snake266 ★★
()

Недавно случайно узнал, что wl-clipboard написан на расте. Cloudflare warp вроде на расте. Думаю, по факту уже полсистемы на расте переписаны, просто это никто особо не афиширует.

Legioner ★★★★★
()

Ненене, ты неправильно вбрасываешь, чувак. Такое раскусывают на раз-два. Нужно тоньше!

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

wl-clipboard

что это?

Cloudflare warp вроде на расте

что это?

Думаю, по факту уже полсистемы на расте переписаны, просто это никто особо не афиширует.

Нет, equery depends на моей гентощке говорит обратное

$ equery depends rust
 * These packages depend on rust:
dev-lang/rust-1.51.0-r2 (system-bootstrap ? =dev-lang/rust-1.50*)
                        (system-bootstrap ? =dev-lang/rust-1.51*)
dev-lang/spidermonkey-78.10.1 (>=virtual/rust-1.41.0)
dev-util/cbindgen-0.19.0 (>=virtual/rust-1.37.0)
games-strategy/0ad-0.0.24b_alpha (virtual/rust)
gnome-base/librsvg-2.50.6 (>=virtual/rust-1.40[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
virtual/rust-1.51.0 (~dev-lang/rust-1.51.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?])
www-client/firefox-89.0 (>=virtual/rust-1.47.0)
 

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

Сначала ты должен понять целевую публику своего вброса. Здесь на самом деле очень много ненавистников руста, потому что «ататат он в генте мешает компилять» или «деды на C пейсали и нам страдать завещали». Поэтому надо наоборот вбрасывать, что вон на русте дескать нового говнеца понапесали и где теперь этот ваш Ц! Треды про запиливание руста в ведро вон сколько публики набирают!

И сразу кастовать @Iron_Bug можно.

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

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

Все по плану. Rust не позволяет написать что-то такое что принципиально написать нельзя на чем-то другом, включая С и С++. Наоборот, можно написать на С и на С++ и оно возможно даже запустится с 5го раза.

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

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

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

вот этот человек умеет вбрасывать

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

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

А как мне глобальный конфиг в проге без срани с unsafe написать? Который инициализируется только при старте, а потом read-only.

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

wl-clipboard

что это?

Жутко удобный софт для работы с буфером обмена на wayland. Если ты когда-то пользовался маком и тебе не хватает под линуксом pbcopy/pbpaste, это оно.

Cloudflare warp вроде на расте

что это?

VPN/Proxy/DNS от Cloudflare.

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

Через read-only структуру данных и dependency injection. Можешь копировать, можешь завернуть в Arc, можешь наставить лайфтаймов

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 2)
Ответ на: комментарий от hateyoufeel

Как и в любом языке без глобального состояния:

  1. Инициализируешь структуру с твоим конфигом
  2. Передаешь «вниз» через shared reference.

Согласен, если были бы HKT и полноценные монады было бы удобнее, но пока придется аргументом передавать.

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

P.S. Это твоя домашка их найти, а не моя

Нет, твоя. Кто агитирует за раст, должен предоставить практические примеры его преимущества. Ведь растовики за 10 лет или сколько он там официально существует, уже должны были кучу софта создать, пока сишники сегфолты ловили, не так ли?

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

Зачем мне это?

Кто агитирует за раст

Ну может кто агитирует, пускай ищут. Я языком на форуме болтаю.

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

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

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

Реально тред дохлый…

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

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

Растолюбители тщетно и судорожно пытаются нагуглить хотя бы какой-нибудь новый софт на расте, который не стыдно предъявить :D

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

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

Сейчас правила другие.

  1. Только троллинг

  2. Принципиально не приводить ни одной ссылки

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

хотя бы красивые программы

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

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

Ну очевидно тем, что работает с халявными Cloudflare серверами.

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

Тебя лично что-ли заставляют что-то писать на нем?

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

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

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

Удачи тебе в борьбе, через десятилетие вообще передешь в резервацию к systemd-хейтерам

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

Советую тебе написать всем клиентам Cloudflare о том, что они не правы. Ведь ты точно знаешь, что все их нужды покроет OpenVPN/Squid или 3proxy/Bind. Скорее! А то они без тебя отдадут все свои деньги на поддержку технологий на ненавистном тебе расте

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

Ну учитывая, что в этой войне его главный противник это ветряные мельницы, я думаю он сам справится

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

Мало. Мы уже выехали чтобы тебя пороть розгой по заднице

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

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

Стоп, подожди… Тоесть что-то у тебя компилируется на Расте? Не может такого быть, согласно твоему треду софта на Расте нету, не будет и все это оптический обман.

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

Через read-only структуру данных и dependency injection. Можешь копировать, можешь завернуть в Arc, можешь наставить лайфтаймов

Через жопу, то есть. А ещё спрашивают, почему Rust никто не любит. Чтобы банально глобальный конфиг сделать, надо вот такую-то срань городить.

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

Беда. Забыл, что в 2021ом гигагерцы по талонам. Скомпилил хелловорд, а потом неделю ждешь в очереди. К слову, если «ненужно», то выпили из системы все компоненты на расте.

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

Согласен, если были бы HKT и полноценные монады было бы удобнее, но пока придется аргументом передавать.

Да даже в том же хачкелле можно сделать глобальный IORef и функцию-обёртку, которая везде будет его выдавать.

Хотя все конечно же юзают Reader.

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

Мы всей Фолсом ярмаркой решили тебя выпороть, одобрение от верховного SJW доминатрикаса ООН есть в трех экземплярах с печатями

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

Ладно, разрешаю не писать на Расте. Но только тебе. Гаральд все еще обязан

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

Псс. Есть еще lazy_static, но ты никому не говори. Это большооой секрет.

Ну да, есть. А ещё можно static mut и unsafe надёргать. Проблема не в этом. Проблема в том, что уже для вот таких вот банальных вещей в Rust нужны костыли.

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

Сколько-то читают, пока что только внутренние проекты для работы помогаю писать. Сейчас получается, что читаемость и так запорота из-за повсеместного использования процедурных макросов, дерайвов и прочих неочевидных (всмысле непрозрачных) вещей уровня TemplateHaskell, а выразительности не хватает. Ну ничего, ещё недолго до стабилизации GAT, там может и полегчает.

Ну а насчет «ненужно», «нечитаемо» и «неподдерживаемо», это всё решается с помощью нескольких простых правил clippy в твоих проектах. Совсем не обязательно отбирать у людей фичи, которые позволят писать меньше бойлерплейта.

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