The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск операционной системы Redox OS 0.6, написанной на языке Rust , opennews (??), 26-Дек-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


341. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (-), 28-Дек-20, 15:25 
Rust - модный язык. Кто хочет быть модным?
Ответить | Правка | Наверх | Cообщить модератору

343. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +4 +/
Сообщение от Wilem82 (?), 28-Дек-20, 15:29 
> Rust - модный язык. Кто хочет быть модным?

Модный - javascript/golang/python.  Там ваще думать не надо, берёшь да идёшь в ногу с модой. А rust - немодный, там думать надо, это тяжело.

Ответить | Правка | Наверх | Cообщить модератору

348. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (-), 28-Дек-20, 15:37 
>А rust - немодный, там думать надо, это тяжело.

Раст - это высокая мода, ты знаешь что-такое высокая мода.

Ответить | Правка | Наверх | Cообщить модератору

362. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Аноним (362), 29-Дек-20, 03:50 
> А rust - немодный, там думать надо, это тяжело.

Вот теперь полный ступор. Кричали же что Си это тяжело, а на расте даже домохозяйка может ось написать.

Ответить | Правка | К родителю #343 | Наверх | Cообщить модератору

386. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +2 +/
Сообщение от Wilem82 (?), 29-Дек-20, 11:23 
> Кричали же что Си это тяжело, а на расте даже домохозяйка может ось написать.

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

Ну и в целом раст позволяет, - а иногда и принуждает - думать и обрабатывать какие-то мелкие детали, которые в игрушечных языках спрятаны.  Например, частный вопрос от новичков раста - а чё это у меня программа выводящая в stdout тормозит? А чел там фигарит println!() и не знает, что на каждый вызов лочится мутекс, и что бы оно быстро работало, нужно один раз взять мутекс себе и только потом в stdout всё записать, что неимоверно ускоряет процесс. На всяких жавах, жаваскриптах и прочем у тебя такого выбора нет, ты всегда будешь платить за синхронизацию каждого вызова.

Ответить | Правка | Наверх | Cообщить модератору

392. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  –1 +/
Сообщение от Аноним (-), 29-Дек-20, 13:43 
>а чё это у меня программа выводящая в stdout тормозит? А чел там фигарит println!() и не знает, что на каждый вызов лочится мутекс, и что бы оно быстро работало, нужно один раз взять мутекс себе и только потом в stdout всё записать, что неимоверно ускоряет процесс.

В Си поезд из точки А в точку Б приедет прямиком. В Расте, для того чтобы доехать до пункта Б, надо сначала проехать пункты В и Д.

Ответить | Правка | Наверх | Cообщить модератору

394. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Аноним (394), 29-Дек-20, 14:24 
https://doc.rust-lang.org/std/io/fn.stdout.html
>> Each handle returned is a reference to a shared global buffer whose access is synchronized via a mutex. If you need more explicit control over locking, see the Stdout::lock method.
> В Си поезд из точки А в точку Б приедет прямиком.

Питонистам и ЖСникам оно конечно виднее, но в С11 говорится о
> §7.21.2 Streams
> Each stream has an associated lock that is used to prevent data races when multiple threads of execution access a stream, and to restrict the interleaving of stream operations performed by multiple threads. Only one thread may hold this lock at a time

А до этого машинист считал, что по умолчанию поезд на этом пути только один.

Ответить | Правка | Наверх | Cообщить модератору

395. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +3 +/
Сообщение от Wilem82 (?), 29-Дек-20, 15:12 
> В Си поезд из точки А в точку Б приедет прямиком. В Расте, для того чтобы доехать до пункта Б, надо сначала проехать пункты В и Д.

Тебе уже поясинили почему неправ, но добавлю: даже если бы это было так, как ты говоришь, это означало бы только врождённую опасность функции вывода в stdout. Именно потому, что Раст как язык и его библиотеки в целом пекутся о корректности - программы на нём корректно работают, а не глючат или сегфолтятся. Не, "ой, я не подумал, ой а я не знал, ой а я не думал что эта ошибка реально может возникнуть", а тебя подталкивают или даже заставляют обработать все крайние случаи. В результате твоя программа имеет больший шанс быть надёжной, а не куском говна.

Ответить | Правка | К родителю #392 | Наверх | Cообщить модератору

404. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  –1 +/
Сообщение от uis (ok), 30-Дек-20, 03:05 
>сегфолтятся

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

>, а тебя подталкивают или даже заставляют обработать все крайние случаи.

Часто встречал программы, где проверяется errno вызова close? Или как там на хрусте.

Ответить | Правка | Наверх | Cообщить модератору

408. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Wilem82 (?), 30-Дек-20, 12:57 
> Уж лучше сегфолт на сях, чем вполне определённое, но не для пользователя, продолжение выполнения.

Не понял про что это.

> Часто встречал программы, где проверяется errno вызова close? Или как там на хрусте.

Я часто встречал где не проверяется, что существенно усложняло траблшутинг на продакшене. Сам же я всегда все ошибки проверяю и логирую если что-то не так.

Вообще, если интересует тема надёжных программ, сделанных для продакшена, а не для тестировщиков - рекомендую к прочтению https://www.amazon.com/Release-Design-Deploy-Production-Read... . Например, механизм "circuit breaker" придумал как раз автор этой книги, и популяризовал тамже, за много лет до того, как реализация CB стала появляться в некоторых фреймворках.

Ответить | Правка | Наверх | Cообщить модератору

403. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от uis (ok), 30-Дек-20, 02:58 
>Это гораздо проще, чем писать на Си, но думать всё равно надо сильно больше, чем на игрушечных языках. Плюс это требует более глубокого понимания низкоуровневого устройства. Например - чем куча отличается от стека.

Что-то мне подсказывает, что наоборот. На сях, например, быстро доходит, чем отличается malloc, alloca и vla. И почему возвращать указатели последних - идиотизм.
Да и вообще си - высокоуровневая замена ассемблеру, разбавляемая разве что inline assembly.

Ответить | Правка | К родителю #386 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру