LINUX.ORG.RU

Rewrite it in Rust - что бы ещё переписать?

 , ,


0

5

Мой кот спрашивает: «Привет, ЛОР овец! Надоело давиться питоном, стал пересаживаться на Растишку. Что бы такое небольшое Переписать на Расте™ для начала? О чём ни подумаешь, всё уже есть на crates.io! Кому-нибудь случайно не хватает некой либы или утилиты в пределах 5 KLOC? Есть шанс, что вы её получите бесплатно под GPL! Спасибо.»



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

Напиши какой-нибудь гуи-фреймворк.

wolph ★★
()

Что бы такое небольшое Переписать на Расте™ ... в пределах 5 KLOC?

какой смысл если в пределах 5 KLOC и на Си всё работает без проблем ?

anonymous
()

Переписать на Расте

Может, вместо этого напишешь что-нибудь полезное?

quantum-troll ★★★★★
()

Клиент для linux.org.ru с встроенным анонимным чатом, работающим через TOR.

Leupold_cat ★★★★★
()
Ответ на: мимокрокодил от anonymous

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

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

А есть какие-то тесты для этой лабуды? А то переписывать сервак без спецификации, без тестов - это гроб.

anonymous
()

что бы ещё переписать?

ДНК свою перепеши. Ибо раст нинужен!

Deleted
()

Перепиши браузер. Перепиши мессенджер. Перепиши гуй. Перепиши аудиоплеер. Перепиши большие фреймворки, текстовые редакторы, ядра, драйвера устройств, прикладные математические либы. Перепиши графопостроитель, быстрый игровок движок и видео конвертер. Перепиши байто%бство и аккуратно вставляй unsafe. Перепиши свою первую программу. Перепиши свои библиотеки. Перепиши себе автокад и шикарные САПР. Перепиши солюшн лучшей фирмы из самого дорогого энтерпрайза. Перепише IDE для Rust, чтобы было чем заняться воскресным утром. Перепиши ютуб, чтобы развалиться на нем и смотреть отупляющие стримы кодинга, набивая своё брюхо помойным геймдевом. Перепиши сам Rust в конце всего, про%бывая последнее в списке переписывания, когда не остаётся ничего, кроме удивления, что это за наколенные поделки, которые ты породил, чтобы заменить ими оригинальные программы. Перепиши будущее. Перепиши всё на свете… Но зачем мне все это? Я не стал переписывать всё на свете… Я выбрал кое-что другое… Причины? Какие могут быть причины, когда есть C++?

Crocodoom ★★★★★
()

напиши УДОБНЫЙ конвертер из rtf в txt. unrtf, похоже, никогда не допилят.

самому лень разбираться с форматом rtf :(

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

Согласен. Мне вот хром разонравился и стал использовать лису вместе с сафари. Новая лиса очень даже хороша.

Кстати, никто не знает, как запретить хрому открывать последнюю страницу из предыдущей сессии? Откровенно задрал

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

Только ФФ очень даже не умер, а наоборот,

Пока рано судить, кода на Rust в нем почти и нет. Разве что CSS-парсер, который по факту оказался во многих случаях медленнее старого и, внезапно, умеет пороть память и выпадать с сегфолтом:

https://bugzilla.mozilla.org/show_bug.cgi?id=1408351

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

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

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

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

умеет пороть память и выпадать с сегфолтом

В указанном тобой баге не видно ни того, ни другого.

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

у него нет задач.

Смотреть веб уже не задача ФФ?

без аддонов

Не знаю, какие маргинальные аддоны ты юзаешь, на моем новеньком квантовом ФФ все нужные аддоны есть.

Если разработчик аддона не желает переделывать его на новый API, то это его проблема, а не разработчиков ФФ.

Unicode4all ★★★★★
()

Напиши аналог Flask на Rust. Или замахнись сразу на Django. Все будут благодарны :)

th3m3 ★★★★★
()
Ответ на: комментарий от quantum-troll
impl<'a, 'r> FromRequest<'a, 'r> for User {
    type Error = ();

    fn from_request(request: &'a Request<'r>) -> request::Outcome<User, ()> {
        request.cookies()
            .get_private("user_id")
            .and_then(|cookie| cookie.value().parse().ok())
            .map(|id| User(id))
            .or_forward(())
    }
}

#[post("/login", data = "<login>")]
fn login(mut cookies: Cookies, login: Form<Login>) -> Flash<Redirect> {
    if login.get().username == "Sergio" && login.get().password == "password" {
        cookies.add_private(Cookie::new("user_id", 1.to_string()));
        Flash::success(Redirect::to("/"), "Successfully logged in.")
    } else {
        Flash::error(Redirect::to("/login"), "Invalid username/password.")
    }
}

https://github.com/SergioBenitez/Rocket/blob/master/examples/session/src/main.rs

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

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

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

Зачем? Пусть пишут на питонах и рубях дальше. А у тех, кто не боится Rust, будет свой инструмент.

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

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

Не надо тащить rust в web! Вы его тоже убьете.

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

А у тех, кто не боится Rust, будет свой инструмент.

Какой? Выше предложенный Rocket? А тебя не смущает, что это даже не заготовка, а пример показывает как не надо делать на самом деле?

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

А у тех, кто не боится Rust, будет свой инструмент.

Какой?

Нативный

Выше предложенный Rocket?

Фреймворков уже довольно много. Rocket или там rouille - какая разница.

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

Это твое мнение? Тогда нет, не смущает.

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

Нативный

Да всем настрать (с) нативное оно или нет, главное чтоб удобно и быстро. Нативно надо для системщины, а там Rust уже не прижился.

Rocket или там rouille - какая разница.

Никакой, тут спорить не буду.

Это твое мнение? Тогда нет, не смущает.

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

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

Нативно надо для системщины, а там Rust уже не прижился.

О да, ты в теме.

Это твое мнение? Тогда нет, не смущает.

Значит я немного больше в теме чем ты

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

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

Latest commit 8 days ago

Они в разных весовых категориях.

RazrFalcon ★★★★★
()

получите бесплатно под GPL

жрите сами

на Расте

тем более

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

Имелось ввиду написанный на Расте.
А так-то в биндинги и я умею.

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

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

Но всё это в сильно вялотекущем состоянии, та же попытка начать переписывание уже 10 месяцев как нетронута вообще.

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

Т.е. движок был на Haskell-е, разрабов вокруг не собрал и его попытались переписать на Rust-е, чтобы собрать чуть больше разрабов?

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

О да, ты в теме.

Пока нет речи о своем стандартном ABI (про работу с другими языками я вообще молчу) - Rust будет использоваться только для прикладного софта, игрушечных песочниц вроде Redox, ну и всякой мелочевки в какую умеет llvm на С++. Тут и в теме быть не надо, и если что и заменит С, то какой-нибудь новый действительно простой язык, изначально рассчитанный на стандартизацию, переносимость и переиспользование.

Или... ты пишешь веб-серверы на Rust? Тогда расскажи о своем опыте.

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

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

Не надо тащить rust в web!

Согласен, использовать раст для подобных вещей — затея сомнительная.
Тем более, что даже в вебе есть более подходящие ниши, вроде того же wasm'а.

quantum-troll ★★★★★
()

Двухпанельный файловый менеджер.

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