The OpenNET Project / Index page

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



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

Оглавление

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

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


26. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (26), 26-Дек-20, 12:42 
Да, такое бывает, год назад сделал утилиту мониторинга и оставил её работать на недельку-две. Результат конечно был забавный, но утилита вместо десятка мегабайт была за полгига. Полностью избежать всех утечек можно только на ручном управлении.
Мне лично нравится rust, но топить за полную 100% безопасность и утечек памяти глупо, хотя некоторые вещи на этапе компиляции отлавливаются.
Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  –1 +/
Сообщение от Аноним (23), 26-Дек-20, 12:44 
> Мне лично нравится rust, но топить за полную 100% безопасность и утечек памяти глупо, хотя некоторые вещи на этапе компиляции отлавливаются.

Посему надо объявить раст устаревшим и выпив смузи, закурив это вейпом, идти писать свой нескучный язык, математически никак его не обосновывая, но говоря что он 100% безопастный и не повторяет ошибок C\C++ и Rust!

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

35. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +2 +/
Сообщение от Аноним (26), 26-Дек-20, 12:50 
С тем же успехом можно хоронить Kotlin "патамушта" есть java Очень глупо объяснять людям, что разные языки под разные нужды. В расте действительно есть множество полезных инструментов, которые в С++ добавили только в 20 версии (и то, если не ошибаюсь, модулей туда не занесли) или их попросту нет.
Ответить | Правка | Наверх | Cообщить модератору

107. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (20), 26-Дек-20, 17:21 
Только большая часть возможностей котлина будет в новой java.
Имеет ли смысл котлин только из-за более копактного синтаксиса и @nonnull на уровне языка?
Ответить | Правка | Наверх | Cообщить модератору

150. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (144), 26-Дек-20, 18:32 
Да, @nonnull в джаве былобы очень кстати
Ответить | Правка | Наверх | Cообщить модератору

149. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (144), 26-Дек-20, 18:30 
Интересно под какие это другие вещи Kotlin был придуман?:) Если Kotlin появился ответом гугла на Oracle/(что там еще)Sun судебные тяжбы. И является именно ПСЕВДО заменой джавы.
Ответить | Правка | К родителю #35 | Наверх | Cообщить модератору

168. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от qwertyemail (??), 26-Дек-20, 19:37 
Kotlin детище JetBrains и очень сомнительно, что по заказу гугля.
Ответить | Правка | Наверх | Cообщить модератору

195. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (193), 26-Дек-20, 23:29 
Уже исть язык Pony, но там математически обосновано все
Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

37. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Аноним (201), 26-Дек-20, 12:52 
Ну вот это исключительно твоя попорукость, нечего её на rust сваливать. Или кривые unsafe, или копятся где-то указатели (которые "умные", в rust, вроде, за пределами unsafe других и нет).
Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

46. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Ordu (ok), 26-Дек-20, 13:14 
> Или кривые unsafe, или копятся где-то указатели (которые "умные", в rust, вроде, за пределами unsafe других и нет).

rust не даёт гарантий насчёт утечек памяти. Откройте наконец документацию и почитайте её. std::mem::forget работает без всяких unsafe, и при этом позволяет создать утечку в полпинка:

    {
        let leak: Vec<u8> = Vec::with_capacity(1_000_000);
        std::mem::forget(leak);
    }

Вот тебе и утечка мильона байт, потому как за пределами блока уже нет указателей на них. И, обрати внимание, ни одного unsafe. Есть и менее очевидные способы утечь память -- скажем Rc вполне это может делать, достаточно циклическую структуру собрать.

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

151. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (144), 26-Дек-20, 18:33 
Вот именно, ваша утечка памяти является ПОЛНОСТЬЮ безопасной как для ПАМЯТИ так и для всей проги.

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

158. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Ordu (ok), 26-Дек-20, 18:47 
> Вот именно, ваша утечка памяти является ПОЛНОСТЬЮ безопасной как для ПАМЯТИ так
> и для всей проги.

It depends... Всё зависит от того, как ты определяешь понятие safety. Rust определяет так, что утечка памяти не считается unsafe. И это не потому, что нет ничего плохого в утечке, и не потому, что разработчики раста не хотели обезопасить программиста от утечек памяти, а потому, что они не нашли способа обезопасить программиста от утечек памяти.

И на фоне этого, мне не нравится твоя позиция, она мне напоминает позицию "зелен виноград": если раст не избавляет от утечек, значит утечки -- это хорошо. По Фрейду это рационализация, то есть целенаправленное искажение реальности с целью уложить факты в красивую картину мира. Картина мира в твоей голове не должна быть красивой, она должна максимально соответствовать миру.

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

289. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (144), 27-Дек-20, 19:15 
Еще раз,

1. unsafe не считается безопасно/не_безопасно, оно считается как Сделай что-то но игнорируя проверки, играй с указателями как Я скажу, ломай поведение проги только лишь потаму что это захотел я.
При использовании unsafe к данной функции ЧИТАЙТЕ зачем там unsafe... и уже потом используйте. Итоговое поведение можно покрыть тестами и оно ВОЗМОЖНО будет полностью safe, а возможно и  нет. Да и на случай проверок по коду данный момент будет отмечен.

2. Утечки плохи для памяти в плане, ну течет:) ну не контролируемо, память может закончится. Но еще раз, причем тут раст? Раст вам дал все гарантии какие смог и утечку в safe rust действительно сделать трудно, но это возможно (банально вызвать forget, ManuallyDrop, Box::leak, ...) .Раст дал безопасную работа с памятью (move sematic, borrow checker, ...) как смог безопасно? безопасно.


3. "а потому, что они не нашли способа обезопасить программиста от утечек памяти." Вы же понимаете что вы написали ровно то как и unsafe, "программиста нельзя обезопасить от unsafe, бо раст не умеет определять safe код это или действительно unsafe", как решается подобное? только тестами. которые в расте хороши, но и всеже к этому приближается +- clippy, ... возможно что-то в этом плане еще улучшат.

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

296. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Ordu (ok), 27-Дек-20, 19:56 
Я не понимаю, чего ты не понимаешь и почему ты упорствуешь. Есть гипотеза, что ты пытаешься осмыслить мир постфактум, игнорируя историю этого мира, которая привела к сложившемуся положению дел. Весьма математический подход к проблеме, который иногда подходит и технарю/инженеру, но лишь иногда. Многие инженерные системы невозможно понять, игнорируя историю их создания и применения.

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

> 3. "а потому, что они не нашли способа обезопасить программиста от утечек памяти." Вы же понимаете что вы написали ровно то как и unsafe, "программиста нельзя обезопасить от unsafe, бо раст не умеет определять safe код это или действительно unsafe"

Возможно. То есть да, в некотором смысле я именно это и написал. Невозможно создать действительно безопасный язык программирования. Поэтому "безопасность" раста -- это ограниченная безопасность, некий компромисс между языком, который не позволяет ничего, но абсолютно безопасен, и языком, который позволяет много чего, но не совсем безопасен.

Мне кажется, что ты пытаешься определить понятие safety как "те гарантии которые даёт rust". Это в некотором смысле правильно, но по хорошему это следовало бы называть Rust Safety, потому что safety в общем -- это более широкое понятие.

Хочешь пример опасности утечек памяти? Представь себе автопилот, который падает в OOM в самый ответственный момент. Да хрен с ним с автопилотом: OOM это возможный вектор для DoS атаки.

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

152. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  –2 +/
Сообщение от Аноним (-), 26-Дек-20, 18:34 
> std::xxx

Так это же проклятый C++ из-за которого горят дыры. Только истинный Rust !

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

154. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Ordu (ok), 26-Дек-20, 18:41 
>> std::xxx
> Так это же проклятый C++ из-за которого горят дыры. Только истинный Rust
> !

Чё? Где ты там увидел C++, родный?

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

359. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (359), 28-Дек-20, 23:13 
www.google.com/search?q=std%3A%3A
Ответить | Правка | Наверх | Cообщить модератору

360. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Ordu (ok), 28-Дек-20, 23:47 
> www.google.com/search?q=std%3A%3A

И что гугл пишет? Я просто стараюсь с ним не общаться без большой надобности. А первая страница результатов ddg при поиске std:: о какой-то венере Sexually Transmitted Diseases.

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

300. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +/
Сообщение от Аноним (201), 27-Дек-20, 20:32 
> std::mem::forget

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

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

41. "Выпуск операционной системы Redox OS 0.6, написанной на язык..."  +1 +/
Сообщение от Аноним (41), 26-Дек-20, 12:59 
> Полностью избежать всех утечек можно только на ручном управлении

Это шутка такая?

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

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

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




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

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