The OpenNET Project / Index page

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



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

Оглавление

Выпуск языка программирования Rust 1.66, opennews (ok), 15-Дек-22, (0) [смотреть все]

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


83. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 07:43 
Знакомлюсь с Rust. Пока первый взгляд через википедию.
Цитата: "const — постоянные. Живут в течение всего времени работы программы. А именно, у них вообще нет определённого адреса в памяти. Это потому, что они встраиваются (inline) в каждое место, где есть их использование,"

Получается "код, не прошедший через компилятор" не сможет получить доступ к константе? По сути это #define?

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

92. "Выпуск языка программирования Rust 1.66"  +1 +/
Сообщение от Аноним (93), 16-Дек-22, 08:58 
Знакомлюсь с Rust через комментарии на опеннет и понимаю что ни один эксперт с опеннет, специалист по низкоуровневым си и ассемблеру не будет на нем писать
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 10:12 
си-программист ядра так заглядывает в раст исходник. Видит знакомое const и ищет из другого модуля где же она.
Ответить | Правка | К родителю #83 | Наверх | Cообщить модератору

142. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (138), 16-Дек-22, 11:24 
А если враги получат доступ к твоей памяти и поменяют значение const? А если const везде встроить то сразу везде её поменять будет сложно. Это называется безоРАСТность!
Ответить | Правка | К родителю #83 | Наверх | Cообщить модератору

147. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 11:41 
Константы помещаются в память защищенную от записи. Не считайте меня кэпом я просто юнгу учу)
Ответить | Правка | Наверх | Cообщить модератору

172. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (138), 16-Дек-22, 12:41 
Ты так уверен что на всех платформах и на всех архитектурах никто никаким способом не может писать в защищенную память? Это я уже не говорю про дизассамбилрование и правку самого бинарника. Ну тебе так-то и раст не нужен с такой верой)
Ответить | Правка | Наверх | Cообщить модератору

176. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 12:52 
А вы так уверены что раст-способ безупречен? Хакеры ломают программы, а вы ломаете стандарты. Трудно было синтаксис подправить чтобы объявление отражало сущность. inline незнакомо?  
Ответить | Правка | Наверх | Cообщить модератору

189. "Выпуск языка программирования Rust 1.66"  –2 +/
Сообщение от Аноним (138), 16-Дек-22, 14:11 
Я считаю что раст дно как и все кто на нём пишут.
Ответить | Правка | Наверх | Cообщить модератору

243. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (93), 17-Дек-22, 01:20 
Несомненно все люди должны прислушаться к мнению такого компетентного и уважаемого эксперта
Ответить | Правка | Наверх | Cообщить модератору

152. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (141), 16-Дек-22, 11:46 
И да ядро и модули ядра в одном пространстве. Так что как и сказал общежитие раст и си это взболтать но не смешивать.
Ответить | Правка | К родителю #142 | Наверх | Cообщить модератору

162. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (162), 16-Дек-22, 12:00 
Глобальные переменные, живущие весь цикл программы - это static. Если ты о них. Но использовать их крайне не приветствуется, доступ только через unsafe.
static mut VAL: ty = expr;

const VAL: ty = expr; // строго типизированная константа, вычисленная на этапе компиляции по выражению справа

const fn foo() {} // функция, которую можно применять как в рантайме (как обычную функцию), так и в компайлтайме в выражениях для расчета констант

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

168. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 12:10 
А знаете почему unsafe? Потому что константа это простая сущность. А по концепции rust программист не должен иметь доступа к сущности. Не будем уточнять по какой причине (неопытность, сговор АНБ и пр.) Но Rust один из языков рекомендованных АНБ для применения. И в этом топике я показываю как разно "говорят" раст и си программисты. И идея интегрировать в единое ядро сомнительна. Они не будут понимать друг друга. Как интерфейсный? может быть.
Ответить | Правка | Наверх | Cообщить модератору

174. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (138), 16-Дек-22, 12:44 
Ну вот и свидетель АНБ насмотревшийся РЕНТВ. АНБ Ruby и Java рекомендуют. И тоже не просто так... Им то уж лучше знать у кого куда должен быть доступ.
Ответить | Правка | Наверх | Cообщить модератору

177. "Выпуск языка программирования Rust 1.66"  –1 +/
Сообщение от Аноним (141), 16-Дек-22, 13:00 
Ну вот и ответственный за срабатывания алярм-фильтра АНБ. ) Говорит витеевато и непонятно. На всякий случай копипаст с этого сайта "АНБ рекомендует переходить на языки программирования, безопасно работающие с памятью
14.11.2022 10:12"
Ответить | Правка | Наверх | Cообщить модератору

190. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от Аноним (138), 16-Дек-22, 14:12 
Питон безопасно работает с памятью в рекомендованных АНБ его нет. Вопрос знатоку: "Почему?"
Ответить | Правка | Наверх | Cообщить модератору

226. "Выпуск языка программирования Rust 1.66"  +1 +/
Сообщение от Аноним Ваноним (?), 16-Дек-22, 19:50 
Хоть АНБ вряд ли желает людям добра, но предположу, что они хотят, чтобы в системы входили только они по бэкдорам, а не рандомные васяны по скачаным эксплоитам на 1001 уязвимость в среднестатистическом девайсе. Ну и типа если раст такой плохой, то АНБ скорее всего делает закладки в llvm на этапе кодогенерации. Задумаемся
Ответить | Правка | К родителю #177 | Наверх | Cообщить модератору

220. "Выпуск языка программирования Rust 1.66"  +/
Сообщение от warlock66613email (ok), 16-Дек-22, 18:32 
Нет, const — это не define, а inline.

Суть в том, что для static переменной гарантируется, что она будет в программе в одном экземпляре. Для const количество экземпляров не регламентируется, от нуля и до неограничено. От const можно взять указатель, но два указателя на один const могут статься будут указывать на два разных экземпляра.

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

285. "Выпуск языка программирования Rust 1.66"  –2 +/
Сообщение от Аноним (284), 18-Дек-22, 09:31 
Ну так и писали бы inlineconst. Что народ ложной сущностью привлекать.
Ответить | Правка | Наверх | Cообщить модератору

287. "Выпуск языка программирования Rust 1.66"  –4 +/
Сообщение от Аноним (284), 18-Дек-22, 09:36 
В дополнение может кто ответить. Читал что раньше в раст были свои реализации потоков, а теперь нативные операционной системы. То есть программисту надо знать особенности потоков в ОС? Так и пишите не многопоточность, а поддержка объектной модели пригодной для многопоточности. Рекламы в раст больше чем что-то особенного. Свой синтаксис и включение наработок из других языков.
Ответить | Правка | К родителю #220 | Наверх | Cообщить модератору

298. "Выпуск языка программирования Rust 1.66"  +1 +/
Сообщение от warlock66613email (ok), 18-Дек-22, 13:28 
> То есть программисту надо знать?

Да, программисту желательно хоть чего-то немножко знать.

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

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

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




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

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