The OpenNET Project / Index page

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



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

Оглавление

Проект по созданию реализации zlib на языке Rust, opennews (??), 11-Апр-24, (0) [смотреть все]

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


15. "Проект по созданию реализации zlib на языке Rust"  +16 +/
Сообщение от Аноним (12), 11-Апр-24, 09:29 
> В качестве причины создания zlib-rs упоминается намерение предоставить вариант zlib, избавленный от потенциальных пробоем, вызванных ошибками при работе с памятью

Но ведь код на расте компилируется компилятором, написанным на C++. Вдруг там ошибки работы с памятью, которые приведут к неправильной компиляции безопасносного кода и вся безопасность пропадет?

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

21. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Аноним (21), 11-Апр-24, 09:37 
Согласен, пусть сначала llvm перепишут.
Ответить | Правка | Наверх | Cообщить модератору

32. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от Аноним (36), 11-Апр-24, 09:59 
> Вдруг там ошибки работы с памятью, которые приведут к неправильной компиляции безопасносного кода и вся безопасность пропадет?

Предлагаешь сразу писать на C++, чтобы ошибки работы с памятью были в основной программе?

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

82. "Проект по созданию реализации zlib на языке Rust"  +4 +/
Сообщение от Аноним (89), 11-Апр-24, 11:21 
На современном C++ тебе ненужно использовать адресную арифметику. Используй std::vector для массивов, используй умные указатели или лучше только ссылки.
Ответить | Правка | Наверх | Cообщить модератору

90. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Аноним (36), 11-Апр-24, 11:33 
> На современном C++ тебе ненужно использовать адресную арифметику. Используй std::vector для массивов, используй умные указатели или лучше только ссылки.

Действительно, как же инженеры из Google и Microsoft не догадались то такого простого и эффективного решения?

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

98. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от BeLord (ok), 11-Апр-24, 11:52 
Каким образом название компании говорит о квалификации конкретного специалиста?-))
Ответить | Правка | Наверх | Cообщить модератору

109. "Проект по созданию реализации zlib на языке Rust"  +3 +/
Сообщение от Аноним (36), 11-Апр-24, 12:05 
> Каким образом название компании говорит о квалификации конкретного специалиста?-))

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

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

194. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Аноним (204), 11-Апр-24, 19:55 
Так инженеры из Google пишут Chrome именно таким образом, а тебя спросить забыли ))
Ответить | Правка | К родителю #90 | Наверх | Cообщить модератору

85. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от Маняним (?), 11-Апр-24, 11:28 
> Предлагаешь сразу писать на C++, чтобы ошибки работы с памятью были в основной программе?

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

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

106. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от Анонии (?), 11-Апр-24, 11:59 
> А ты предлагаешь все свои косяки списать на с++

Из новости:

> По данным компаний Microsoft и Google около 70% уязвимостей вызваны небезопасной работой с памятью.

Что ты об этом думаешь?

Кстати, да, эти 70% - мои личные косяки. Предлагаю списать их на C++, а Раст провозгласить белым и пушистым.

> Клиентам насрать почему утекли данные.

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

> Они утекли из программы написанной на расте

Когда утекли? Из какой программы? Ссылочку можно?

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

45. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от JackONeillemail (?), 11-Апр-24, 10:16 
Разве компилятор хруста не сам себя компилирует уже давно?
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

48. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от ferris (?), 11-Апр-24, 10:21 
Фронтенд на расте, а бэкенд - нет.
Ответить | Правка | Наверх | Cообщить модератору

86. "Проект по созданию реализации zlib на языке Rust"  +4 +/
Сообщение от Аноним (86), 11-Апр-24, 11:29 
Если так, то это позор
Потому что каждый, кто пишет свой язык, в первую очередь добивается чтобы этот язык мог скомпилировать сам себя, т.е. написать компилятор на самом себе это такой своеобразный хеллоуворлд для дизайнеров языка
Ответить | Правка | Наверх | Cообщить модератору

93. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от ferris (?), 11-Апр-24, 11:39 
Не позор, а потому что нету смысла. Сейчас много языков компилируют в LLVM-IR: это существенно упрощает разработку компиляторов, и у тебя сразу бесплатно появляется поддержка кучи аппаратных платформ.
Ответить | Правка | Наверх | Cообщить модератору

104. "Проект по созданию реализации zlib на языке Rust"  –2 +/
Сообщение от Аноним (218), 11-Апр-24, 11:57 
> Не позор, а потому что нету смысла. Сейчас много языков компилируют в
> LLVM-IR: это существенно упрощает разработку компиляторов, и у тебя сразу бесплатно
> появляется поддержка кучи аппаратных платформ.

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

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

133. "Проект по созданию реализации zlib на языке Rust"  –1 +/
Сообщение от Аноним (-), 11-Апр-24, 13:13 
Отсутствие стандарта не делает язык плохим.
А вот наличие такого овностадарта как у сишки... лучше бы его вообще не было))

Вот тут вам в ваш распрекраснейший "стадарт" еще UB напихали linux.org.ru/forum/development/17495219
То что раньше было ID стало UB

до С23
if new_size is zero, the behavior is implementation defined (null pointer may be returned (in which case the old memory block may or may not be freed), or some non-null pointer may be returned that may not be used to access storage). Such usage is deprecated

в C23
if new_size is zero, the behavior is undefined.

Еще и обратную совместимость сломали.

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

138. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от нах. (?), 11-Апр-24, 13:23 
> Еще и обратную совместимость сломали.

а то у тебя дофига кода которому нужно было ТАК получать null pointer?

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

137. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от нах. (?), 11-Апр-24, 13:22 
> позор, позор. сдох llvm - сдох язык

открытый код не может сдохнуть - байтики никуда не пропадут.

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

143. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Аноним (218), 11-Апр-24, 13:37 
>> позор, позор. сдох llvm - сдох язык
> открытый код не может сдохнуть - байтики никуда не пропадут.

скажи это XFree86.

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

151. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от нах. (?), 11-Апр-24, 14:32 
А что ей сделалось? На том железе и по сей день запустится.

А с llvm в этом плане и еще проще, поскольку он куда меньше зависит от шта6ле нонсенсов.
Как работал так и будет. Добавить новую платформу ты к нему конечно не сможешь, ну так ты и сейчас не сможешь.

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

215. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от Аноним (215), 12-Апр-24, 00:05 
Сдох LLVM — это как именно? С двенадцатым ударом часов перестанут компилироваться исходники? Ну что ж, печаль, ляжем и умрём все тогда, наверное.
Ответить | Правка | К родителю #104 | Наверх | Cообщить модератору

209. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от Аноним (209), 11-Апр-24, 21:38 
> Если так, то это позор
> Потому что каждый, кто пишет свой язык, в первую очередь добивается чтобы

Позор - опять онанимным Ыкспердам, слашавшим звон.
"Компилятор на самом себе" совершенно не означает, что ты должен еще и переизобрести трансляцию в машкод всех возможных платформ.
Впрочем, ыкспрды ни о том, что байткод для LLVM <-> это "машкод для виртуального процессора" не слышали, ни о "чистом" бэкэнде на ржавом типа crane-lift (ест-но, поддерживающего заметно меньше архитектур), но им некогда - комменты сами себя не напишут ...

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

66. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от Дамир (??), 11-Апр-24, 10:55 
Компилятор раста 1.68 квалицифирован как безопасный для целей ISO 26262 (ASIL D) и IEC 61508 (SIL 4)  https://ferrous-systems.com/ferrocene/
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

118. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от anonymmmeer (?), 11-Апр-24, 12:44 
We plan to work on standards like DO-178C, ISO 21434, and IEC 62278 in the future.

ждём DO-178C, думаю лет за 15 управятся

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

128. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от Аноним (-), 11-Апр-24, 12:58 
Ну так язык молодой, ему меньше 10 лет.
Как раз через 15, будет серьезный уважаемый язык, который используется в ядре и куче других сложных проектов.
А, кстати какие компиляторы СИ и С++ соответствуют этим стандартам?
Если кто-то знает, напишите какие.

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

147. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Аноним (218), 11-Апр-24, 14:12 
> Ну так язык молодой, ему меньше 10 лет.

rust edition 2021 вышел в октябре с версией 1.56.0, ему всего-лишь 3 года!!!

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

69. "Проект по созданию реализации zlib на языке Rust"  +1 +/
Сообщение от Аноним (217), 11-Апр-24, 11:01 
> Но ведь код на расте компилируется компилятором, написанным на C++

Код на расте давным-давно компилируется компилятором, написанным на расте. С таким же успехом ты мог бы сказать что код, написанный на сишке (включая ++) компилируется компилятором, написанным на паскале (первая версия gcc была именно на нём написана, https://www.gnu.org/bulletins/bull1.txt пруфом, цитирую:

Although I have a portable C and Pascal compiler, it has a serious drawback: it is a very large program, and intrinsically cannot be made smaller. It is also very hard to bootstrap.

The problem is that most of the compiler is written in Pastel, a super-hairy extended Pascal, and it is also the sole compiler for that language.  To make it smaller, we must eliminate the hair needed to compile Pastel; then we will not be able to compile Pastel, so it must all be rewritten into C.)

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

79. "Проект по созданию реализации zlib на языке Rust"  +3 +/
Сообщение от ferris (?), 11-Апр-24, 11:17 
Эти утверждения можно было бы засчитать, если бы rustc на выходе генерировал машинный код, а не LLVM-IR. Но пока что для сборки нужен LLVM, а оно, внезапно, написано на плюсах.
Ответить | Правка | Наверх | Cообщить модератору

117. "Проект по созданию реализации zlib на языке Rust"  +2 +/
Сообщение от Cykooz (ok), 11-Апр-24, 12:41 
Из таких соображений можно сказать, что все компиляторы, кроме C, написаны на С, т.к. они используют системные вызовы ядра операционной системы, которая написана на С.

Компилятор раста написан на расте, а не на LLVM-IR или C++. Имея в наличии только LLVM у вас не получится собрать этот компилятор. Значит ваш вывод не верен. Что бы собрать современный компилятор раста, надо иметь уже собранный компилятор раста. Вероятно более старой версии, но тут проблема "яйца и курицы", которая есть у всех языков и каждый решает её как может.

От того, что компилятор генерирует машинный код для виртуальной платформы LLVM, он не перестаёт быть полноценным компилятором. Даже наоборот, он отлично вписывается в Unix-Way. Делает только свою работ - компилировать программы на Rust. А вот что бы эти программы работали на разных аппаратных платформах, то пускай этим занимается LLVM, который специально для этого и сделан.

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

140. "Проект по созданию реализации zlib на языке Rust"  –1 +/
Сообщение от Аноним (217), 11-Апр-24, 13:25 
> Вероятно более старой версии, но тут проблема "яйца и курицы", которая есть у всех языков и каждый решает её как может.

И в самом начале цепочки увидим Ocaml, а не дыряшечку.

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

144. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от Cykooz (ok), 11-Апр-24, 13:44 
> И в самом начале цепочки увидим Ocaml, а не дыряшечку.

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

И написал бы в readme, что вначале было "ничего", а потом бог создал бинарник с компилятором раста.

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

156. "Проект по созданию реализации zlib на языке Rust"  +/
Сообщение от n00by (ok), 11-Апр-24, 14:45 
> Из таких соображений можно сказать, что все компиляторы, кроме C, написаны на
> С, т.к. они используют системные вызовы ядра операционной системы, которая написана
> на С.

Довольно опасное заявление. Трансляция - это перевод  исходного текста в целевой машинный код. Для чего достаточно двух областей памяти - входной и выходной буфера. Если где-то там ещё вызываются mmap() или read()/write() - это такая мелочь, о которой странно упоминать.

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

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

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




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

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