The OpenNET Project / Index page

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



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

Оглавление

Фронтэнд для языка Rust доведён до готовности для интеграции в GCC 13, opennews (??), 06-Дек-22, (0) [смотреть все]

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


1. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +12 +/
Сообщение от Аноним (1), 06-Дек-22, 21:20 
как говорится - Собаки гавкают, а караван идет.
Ответить | Правка | Наверх | Cообщить модератору

3. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –2 +/
Сообщение от раст переусложнён (?), 06-Дек-22, 21:22 
караван не умеет в goto и синглтоны. количество - не значит качество. скорее - ширпотреб.
Ответить | Правка | Наверх | Cообщить модератору

6. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +10 +/
Сообщение от Gedweb (ok), 06-Дек-22, 21:25 
Орнул, даже и добавить нечего. Разве только ещё антипаттернов.
Ответить | Правка | Наверх | Cообщить модератору

71. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +2 +/
Сообщение от Аноним (71), 06-Дек-22, 22:59 
> Орнул, даже и добавить нечего. Разве только ещё антипаттернов.

Ну так номер версии сабжа в тему. Так кого должен любить черт, тринадцатый? %)

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

13. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –2 +/
Сообщение от Царь бог лучший князь (?), 06-Дек-22, 21:37 
Зачем расту goto? Эта конструкция используется в си из-за его хренового эррор хендлинга, ибо какой то из дескрипторов в функции может не открыться, нужно будет закрыть в обратном порядке. А поскольку RAII в си не завезли, выбора нет. Так зачем же goto в языке с RAII?
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

14. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –4 +/
Сообщение от раст переусложнён (?), 06-Дек-22, 21:42 
Кнута почитайте..
Ответить | Правка | Наверх | Cообщить модератору

16. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +1 +/
Сообщение от Царь бог лучший князь (?), 06-Дек-22, 21:45 
Будут ли более веские аргументы? Кроме отсылок почитать Кнута
Ответить | Правка | Наверх | Cообщить модератору

28. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +2 +/
Сообщение от Аноним (28), 06-Дек-22, 22:04 
Зачем в расте unsafe? Что-то принципиально нельзя сделать в "безопасном" режиме?
Ответить | Правка | Наверх | Cообщить модератору

42. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +4 +/
Сообщение от Аноним (-), 06-Дек-22, 22:32 
> Зачем в расте unsafe? Что-то принципиально нельзя сделать в "безопасном" режиме?

Да, представляете. Например...
1) Все сисколы операционок мало того что сишные, так еще деланые в лохматых годах. Когда думали ... ну в общем о совсем других вещах. И никто это не будет ради вас переделывать, софта под это уже вся планета, вломы всем столько переписывать. Поэтому интерфейсы ос такие какие есть и с этим придется жить. И разумеется гарантии сабжа при этом немного пролетают. Покажите вообще статический анализ штуки типа ioctl()? Как бы это могло вообще выглядеть?
2) Многие интерфейсы к ЯП, либам и проч - см. выше, та же ерунда. Переписать весь мир на %s это круто конечно. До тех пор пока вот лично вам не приходится этим заняться. А вот тут почему-то оказывается что не так уж это и круто, если вы хатели сделать вон ту задачу а не убить 100500 лет на побочную активность.
3) В системных вещах иногда надо референсить память по конкретным адресам, с пофигом на то что там расположено. И разумеется это не безопасно если вы не понимаете что и зачем делаете.
4) Некоторые алгоритмы могут сильно выиграть по скорости от лобовой математики с адресами и проч, если там минимум допущений и оверхеда. И более того - эффективная их реализация с проверками может быть не особо внятной. Разумеется при этом можно отстрелить себе пятку.

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

58. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –3 +/
Сообщение от Аноним (28), 06-Дек-22, 22:47 
Мог бы просто написать, что на расте всё выше перечисленное сделать невозможно.
Ответить | Правка | Наверх | Cообщить модератору

69. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (71), 06-Дек-22, 22:58 
> Мог бы просто написать, что на расте всё выше перечисленное сделать невозможно.

При сильном желании вроде возможно. Обложившись кучей unsafe, да...

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

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

48. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –2 +/
Сообщение от ip1982 (ok), 06-Дек-22, 22:37 
> Зачем в расте unsafe?

unsafe отключает _некоторые_ возможности статистического анализатора. Всё.

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

55. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –1 +/
Сообщение от Аноним (28), 06-Дек-22, 22:46 
Т.е. со включенным анализатором толком ничего не сделать...
Ответить | Правка | Наверх | Cообщить модератору

95. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +7 +/
Сообщение от Анончик (?), 07-Дек-22, 00:18 
Примерно так же как предохранитель на ружье, что бы ногу себе не отстрелить.
Ну это же только дурачки пользуются оружием с предохранителем, настоящие пацаны знают что если на курок не нажимать то все будет нормально.
Ответить | Правка | Наверх | Cообщить модератору

107. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +2 +/
Сообщение от Аноним (-), 07-Дек-22, 01:34 
С другое стороны, пока ты будешь снимать с предохранителя свое ружье, тебя как раз настоящий  пацан и пристрелит пока ты там возишься.
Ответить | Правка | Наверх | Cообщить модератору

147. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +2 +/
Сообщение от Аноним (147), 07-Дек-22, 07:28 
Настоящий пацан успеет прострелить себе ногу. 👏
Ответить | Правка | Наверх | Cообщить модератору

166. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от YetAnotherOnanym (ok), 07-Дек-22, 09:57 
Аналогия так себе. Овердофига моделей пистолетов, у которых просто нет предохранителя, как детали, управляемой отдельным рычажком или кнопкой. Роль предохранителя выполняет накладка на спусковом крючке (блокирует спуск, пока стрелок не надавит на неё пальцем) или выступающий рычаг на задней стороне рукояти (блокирует УСМ и отключается при утапливании в корпус, когда ладонь стрелка обхватывает рукоять).
Ответить | Правка | К родителю #95 | Наверх | Cообщить модератору

228. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Проффесорemail (?), 08-Дек-22, 00:20 
Зачем нужно ружье, если не трогать предохранитель?
Ответить | Правка | К родителю #95 | Наверх | Cообщить модератору

73. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от ssdf (?), 06-Дек-22, 23:04 
Еще некоторые auto trait'ы как Send / Sync руками можно только через unsafe объявить.
Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

99. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от pashev.ru (?), 07-Дек-22, 00:39 
Статического, конечно же.
Ответить | Правка | К родителю #48 | Наверх | Cообщить модератору

129. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (129), 07-Дек-22, 04:30 
Например, без unsafe не написать биндинги к системным библиотекам линукса, которые по сути своей все на Си. https://github.com/gtk-rs/gtk4-rs/search?q=unsafe
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

162. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (-), 07-Дек-22, 09:23 
> Например, без unsafe не написать биндинги к системным библиотекам линукса, которые по
> сути своей все на Си. https://github.com/gtk-rs/gtk4-rs/search?q=unsafe

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

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

248. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Совершенно другой аноним (?), 08-Дек-22, 12:47 
Сисколы они, всё-же, немного не С-шные, а таки процессорные. int 0x80, sysenter и т.д. к C отношения не имеют.
Ответить | Правка | Наверх | Cообщить модератору

278. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (278), 12-Дек-22, 06:44 
> и т.д. к C отношения не имеют.

Вообще-то есть такая штука - syscall(). И мне очень интереcно что такое "int 0x80" в каком-нибудь RISCV. А вот syscall() там тоже будет. Как он там внутрях сделан второй вопрос. Факт в том что так можно доступиться к всем услугам операционки.

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

32. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Sw00p aka Jerom (?), 06-Дек-22, 22:10 
Software Developer Manuals for *
Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

39. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +1 +/
Сообщение от Gefest (?), 06-Дек-22, 22:24 
Правильна : Все управляющие конструкции можно  заменить на while - так победим !
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

41. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +4 +/
Сообщение от анонимус (??), 06-Дек-22, 22:29 
goto нужен только чтобы выпрыгнуть из вложенных циклов - для этого есть более явный человеческий break с меткой. Ну и для очистки ресурсов - но тут это принято через раишный дроп. Синглтоны кроме как для примеров антипаттернов не нужны(хотя и нет проблем их реализовать завернув например банально в лэзи-статик)
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

60. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +3 +/
Сообщение от Аноним (28), 06-Дек-22, 22:49 
> goto нужен только чтобы

Говоря "только", ты показываешь свою необразованность.

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

66. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (66), 06-Дек-22, 22:53 
> goto нужен только чтобы выпрыгнуть из вложенных циклов

Для этого даже в самых винтажных сяx break был. А вот goto обычно используется для обработки ошибок и проч чтобы скипнуть солидный блок кода реюзанув общий хвост где подчистка за собой например. Но структурированость этого - все же так себе. Просто другие варианты бывают еще хуже.

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

268. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Gj (?), 09-Дек-22, 21:22 
>> Для этого даже в самых винтажных сяx break был

в "сях" break не поддерживал метки

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

272. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (-), 10-Дек-22, 02:34 
> break не поддерживал метки

Вы хотите недостатки goto + break сразу?! Оба плохи для структурирования программ, а такое комбо просто ужасно. Если вы хотите чтобы чтец неверно понял что вы делали и посадил баг вы на верном пути.

На сях я break использую, но без энтузиазма т.к. слом структурирования. Только 1 вариант как это делать обеспечивает что читающий программу поймет что и зачем было. А вот goto лично я не использую, дабы избежать весьма характерных пролетов. Я видел лишь 1 валидный кейс, обработка ошибочных ситуаций. По иронии именно там то и бывают косяки. В том числе когда кодер из-за де-структурирования сам же и запутался в своем спагетти на какой лэйбл вот отсюда правильно прыгать.

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

46. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (-), 06-Дек-22, 22:36 
> караван не умеет в goto

Может оно и к лучшему, а? Все по заветам правильных олдскулеров в этом месте :) Правда, не то чтобы костыли которые вбивают когда это понадобилось сильно лучше - но как видите без него можно.

К сожалению изначальные претензии - "нарушает структурированность программ" все мыслимые костыли придуманные человечеством так же не снимают. Ну то-есть структурированность все равно нарушается, все-равно не очень очевидным образом, etc.

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

64. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +1 +/
Сообщение от Аноним (64), 06-Дек-22, 22:52 
Незачем из Раста делать плюсы, наличие похожих но разных методов только усложняет язык.
А ты и предлагаешь это сделать.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

96. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Без аргументов (?), 07-Дек-22, 00:20 
Это тролль
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

106. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (106), 07-Дек-22, 01:33 
Эдсгер Дейкстра ещё в 1968 году написал всё, что нужно знать про goto. Но ты ж не осилил, даже с переводом.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

123. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +1 +/
Сообщение от Аноним (123), 07-Дек-22, 03:30 
А Дональд Кнут в своей фундаментальной книжке goto любил и применял. Кнут написал TeX. А что написал Дейкстра, чтобы его слушать?
Ответить | Правка | Наверх | Cообщить модератору

139. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от name (??), 07-Дек-22, 06:11 
операционную систему и компилятор к алголу например
Ответить | Правка | Наверх | Cообщить модератору

149. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +2 +/
Сообщение от Александрemail (??), 07-Дек-22, 08:04 
ТеХ вродь как вполне себе живет и пользуется. а где та ОСь и тот алгол?
Ответить | Правка | Наверх | Cообщить модератору

108. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –5 +/
Сообщение от Аноним (108), 07-Дек-22, 01:40 
Какой готу, иди книги почитай, этот костыль даже в си используют только криворукие.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

115. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (115), 07-Дек-22, 02:21 
так думают только те, кто его один раз в жизни юзал во время изучения языка
Ответить | Правка | Наверх | Cообщить модератору

134. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (108), 07-Дек-22, 05:38 
Потому что учить надо сначало ассемблер, а потом си. Тогда желание его использовать в си сразу отпадает.
Ответить | Правка | Наверх | Cообщить модератору

168. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от YetAnotherOnanym (ok), 07-Дек-22, 10:07 
Тебя бэйсиком в детстве ушибло?
Ответить | Правка | К родителю #115 | Наверх | Cообщить модератору

119. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (119), 07-Дек-22, 02:47 
Goto тебе никогда и не понадобится (ну или иди на ассемблере прогай). А нужен синглтон - ну так создай объект в самом верхнем скоупе и пробрасывай его везде через DI. А исторически сложившиеся синглтоны в других языках через статические поля и методы, которые потом можно дернуть где угодно - не, спасибо. Ладно бы еще потокобезопасность, так потом на эту фекалию тесты нормально писать невозможно.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

124. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +1 +/
Сообщение от Аноним (123), 07-Дек-22, 03:30 
> Goto тебе никогда и не понадобится

Дональд Кнут с вами не согласится

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

127. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (119), 07-Дек-22, 04:26 
Он просто предлагает менее радикальную точку зрения, по сравнению с Дейкстрой. Что если суть алгоритма в прямых переходах, то может стоит не так сильно стесняться ими пользоваться. При этом он не отрицает, что читабельность подобных алгоритмов резко деградирует.
Ответить | Правка | Наверх | Cообщить модератору

135. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (108), 07-Дек-22, 05:48 
Когда говорил? В 1974? Сейчас компиляторы все сами оптимизируют, никакие готу не нужны.
Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

140. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  +/
Сообщение от Аноним (140), 07-Дек-22, 06:14 
Парадигма структу́рного программи́рования предполагает отказ от goto
Концептуализирована в конце 1960-х — начале 1970-х годов

Удивительно что местные высококомпетентные эксперты по программированию с ней не знакомы.

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

167. "Фронтэнд для языка Rust доведён до готовности для интеграции..."  –1 +/
Сообщение от YetAnotherOnanym (ok), 07-Дек-22, 10:05 
> Собаки захлёбываются восторженным лаем, впадая в экстаз от переполняющего их энтузиазма, а караван жизни идет мимо, не замечая их радостной истерики.

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

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

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

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




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

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