Михаил @mikhanoid
ИММ УрО РАН
Information
- Rating
- Does not participate
- Registered
- Activity
Specialization
System Software Engineer, scientific programming
Scheme
C
Assembler
Linux
Maths
Julia
Compilers
Math modeling
Machine learning
Computer Science
ИММ УрО РАН
Не могли бы Вы уточнить, что такое "прямое преобразование"? И ещё с нейтронами очень не понятно... Нейтроны будут бомбардировать оборудование реактора, прежде чем будут попадать в бланкет? Или же бланкет как-то можно устроить между плазмой и магнитами?
Выпекание процессоров останется ультратехнологичным производством, даже если технологии перестанут совершенствоваться. Даже текущий уровень воспроизвести - это крайне тяжёлая технологическая задача. Хотя, вроде как, всем известно, как это всё нужно делать, но требования к точности и к чистоте техпроцессов именно, что ультра.
Intel собирается сделать сигнальные и питающие слои проводки по разные стороны от слоя транзисторов. Думается, это будет любопытно.
Почему не понятно, за что "Слуги" получили свои премии? Вот же
Да ладно, все так делают. Какой-нибудь Pine64, например, то же самое продаёт. Если эти репкоделы обеспечат стабильность поставок и поддержку дистрибутивов, то уже будет некоторое достижение. Маловероятно, конечно, ибо «резидент Сколково»™, но а вдруг?
Я могу писать сами алгоритмы и структуры данных полностью сам, без использования сторонних классов, то есть, без подкапотных Unsafe. Библиотечные классы мне понадобятся для ввода/вывода, и в них может быть Unsafe. Но это работа на уровне OS, в которой Unsafe вполне приемлем.
Так, вроде, речь о двух клавиатурах для одной машины...
Огласите весь список возможных решений, чтобы понять, которое из них худшее :)
В Linux можно подключить две клавиатуры и настроить для них разные раскладки.
А в научной нотации тоже от латиницы откажемся? Не ощущается это хорошей идеей.
Английский упрощался и переформатировался под международным давлением. Мы же не на языке Шекспира пишем, а используем некий наиболее общий pidgin - примитивный язык: "я ехать в 3 час сегодня сверху трамвай". Да, он сформирован на основе английского, потому что Британия была великой морской торговой империей. Но, может, она и была великой морской торговой империей, потому что всем легко было освоить базовые структуры языка?..
Смогут ли господа/товарищи патриоты вменить русский всем потенциальным своим партнёрам, чтобы расширять свою it-индустрию на них? И не боятся ли они, что великий и могучий таким образом превратится в "твоя моя понимай"? Ведь, необходимо будет резко упростить систему сопряжений и склонений. Иначе прямо сейчас легко разглядеть многокилометровые флеймы о допустимых падежах и формах глаголов в именованиях функций, классов, процедур и т.д. И, ведь, это будет настоящая производственная необходимость, а не просто ВерблюдСтиль против _подчёркивание (споры о которых носят характер религиозных войн). Программистам, всё равно, придётся жить с двумя языками: русским и pidgin-русским. И второй будет проникать в сферу обращения первого.
Оно нам точно надо?
Если так уж не хочется английского, то может быть, лучше взять или разработать простой искусственный язык такой, как toki pona?
Слышал такую мотивацию: военные не хотят, чтобы их программисты знали английский, потому что знание английского повышает шансы ухода такого специалиста в закат, то есть на запад.
Сложно забыть о том, о чём не знаешь. То есть, мне не нужно знать про этот Unsafe, чтобы писать всякие нетривиальные структурки данных на Java, а в Rust unsafe для таких структурок обязателен
Простите, но как Вы без плавающих курсов валют будете перераспределять богатства в пользу метрополий?
Ok. Больше мне нечего сказать. Если Вы считаете это красивым и верным подходом к дизайну ЯП, то кто я, чтобы омрачать Ваш праздник жизни? Наслаждайтесь! Эволюция и экономика нас рассудят.
Да, но в условном Java, можно написать: `old = x; x = new; return old` - всё вполне себе safe. В Rust приходится это делать unsafe операцией, которая нарушает гарантии на корректность операций с памятью.
Когда Rust дизайнили, никто не задумывался, что подобных конструкций в алгоритмах дочерта и больше, и что, наверное, семантика императивного языка не должна подразумевать, что подобные операции небезопасны?
Не, если кому-то нравится, то я ж не против. Но зачем всех пытаться убедить, что это хороший дизайн ЯП, что так и должно быть? Какой-то стокгольмский синдром...
В обсуждаемом коде
mem::replace
используется, чтобы изменить ссылку. В Java это обычное безопасное присваивание `x = y`.В проекте на условном Java можно весь native оставить на уровне JVM и принять политическое решение: для большей безопасности и переносимости, мы запрещаем код с native. В Java ME, если верно помню, вообще native не было.
В Rust для реализации многих структур данных (не для низкоуровневого доступа к железу, а именно для реализации структур данных) требуется unsafe. Более того, в таком unsafe коде часто требуется ручное управление памятью. И мы не можем принять политическое решение запретить такой код в проекте - это лишит нас эффективных структур данных.
Просто не надо кричать на каждом углу, что Rust даёт какие-то особенные гарантии безопасности. Тогда и претензий к Rust не будет.
Ну, а чё? Вполне укладывается в стратегию по переходу всех в метавселенные: если реальность противоречит виртуальности - тем хуже для реальности. Цифровизация она такая. Гегель одобряет.
Одно дело unsafe для реализации чего-то действительно системного. Другое дело unsafe для реализации простейших структур данных. ??♂️
В JVM можно без native реализовать большое разнообразие структур данных, в Rust без unsafe спектр возможного гораздо уже.