The OpenNET Project / Index page

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



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

"Выпуск языка программирования Rust 1.45"  +/
Сообщение от opennews (??), 20-Июл-20, 10:21 
Опубликован релиз языка системного программирования Rust 1.45, основанного проектом Mozilla. Язык сфокусирован на безопасной работе с памятью, обеспечивает автоматическое управление памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=53398

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

Оглавление

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


3. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 10:28 
Вот, ребята, у меня кризис. Не знаю, на чем программировать. С одной стороны, хочу безопасность, с другой стороны - эффективность. И с третьей - по возможности простоту. Пробовал на Java - вроде бы не слишком опасно, но и как-то тяжеловесно. Пробовал Haskell - не всегда понятно местами и я до сих пор не особо пойму в эффективность в чистом ФП. Пробовал в Си - как-то уж слишком опасно. Что думаете насчёт Rust в этом ключе, стоит пробовать?
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск языка программирования Rust 1.45"  +16 +/
Сообщение от Аноним (5), 20-Июл-20, 10:32 
А на чём собственно сейчас программируешь? Давай предысторию кризиса.
з.ы. Диванному психологу недостаточно входных данных.
Ответить | Правка | Наверх | Cообщить модератору

19. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (3), 20-Июл-20, 10:50 
Я студент-математик, мои основные задачи сейчас состоят в реализации всяких алгоритмов хитрых. В основном пока что я делал только игрушечные кейсы, но я чую, что скоро понадобиться делать серьёзное вычисление, ресурсоемкое. И вот тут вопрос.

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

Также я пробовал Haskell, язык вроде бы и приятный, крутая и мощная система типов, всякие математические концепции. Но, с другой стороны, я никак не могу избавиться от вопросов по поводу производительности (все-таки чистое ФП с неизменяемыми данными), да и порой отсутствие привычных императивный концепции напрягает мозги.

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

Ещё интересуюсь формальной верификацией и тем, как пишут код в NASa, пока изучают вопрос. Такой вот помешанный на безопасности я, да

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

30. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Анонолекс (?), 20-Июл-20, 10:58 
Язык ADA.
Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Анонолекс (?), 20-Июл-20, 11:03 
P.S. Я как-то мелкий видел бабу на пляже с подобной книгой: https://scientificrussia.ru/data/auto/historical/preview-ada...

ХЗ, чё её все стороной обходили...

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

36. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 20-Июл-20, 11:05 
Это у вас не совсем канон, я на лурке читал, что настоящая книга по аде всегда красная
Ответить | Правка | Наверх | Cообщить модератору

46. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от заминированный тапок (ok), 20-Июл-20, 11:18 
на фото книга была когда-то красной, когда была свежей
потом со временем свернулась от старости и стала коричневой
Ответить | Правка | Наверх | Cообщить модератору

88. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от lockywolf (ok), 20-Июл-20, 12:20 
> на фото книга была когда-то красной, когда была свежей
> потом со временем свернулась от старости и стала коричневой

Когда-то была трёхцветной, но потом покраснела от крови мучеников accidental революции.

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

231. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (-), 21-Июл-20, 08:00 
Математик? Алгоритмы?
Free Pascal без вариантов.
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

240. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (240), 21-Июл-20, 10:00 
Пожалей студента. Он ведь выпустится, начнёт работу искать. И кому нужен будет с фрипаскалем?
Ответить | Правка | Наверх | Cообщить модератору

258. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (258), 21-Июл-20, 12:35 
Он будет давать работу таким как ты.
Ответить | Правка | Наверх | Cообщить модератору

274. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (240), 21-Июл-20, 13:42 
Типа он наговнокодит, а мне потом переделывать? Спасибо, конечно, но мне и без этого есть чем заняться.
Ответить | Правка | Наверх | Cообщить модератору

40. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Anonn (?), 20-Июл-20, 11:08 
> как пишут код в NASa

И на чем там пишут? Никогда не задумавался об этом. Предположу, что все-таки на чистом Си, но с кучей тестов и где нужно математическое док-во корректности каждой функции.

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

48. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от заминированный тапок (ok), 20-Июл-20, 11:24 
об этом была целая статья
основной код пишут (прошивка лYнохода и тд) на Си

но более "высокоуровневые" вещи пишут на чём угодно (грубо говоря вьюшки данных на стороне клиента), там нет строгих ограничений (во многом Питон)

---
Интересный факт, на Опенете русское слово лYнохода - матерно и не проходит валидацию

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

102. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (102), 20-Июл-20, 12:51 
> Интересный факт, на Опенете русское слово лYнохода - матерно и не проходит валидацию

Видимо прикрутили машинное обучение для распознования матерных слов, и слово лунoxoд бездушная машина воспринимает как хуeплёт

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

103. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Sluggard (ok), 20-Июл-20, 12:56 
Скорее это из-за сленгового использования слова «лунохoд» для обозначения линуксоидов. Тут и с написанием слова «вендузятник» были проблемы.
Ответить | Правка | Наверх | Cообщить модератору

131. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от заминированный тапок (ok), 20-Июл-20, 14:31 
> Скорее это из-за сленгового использования слова «лунохoд» для обозначения линуксоидов.
> Тут и с написанием слова «вендузятник» были проблемы.

зато с вантузом всё хорошо

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

167. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Anonn (?), 20-Июл-20, 17:38 
Вот значит, куда завел мой разговор.
Ответить | Правка | Наверх | Cообщить модератору

157. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 17:04 
Я видел как-то жёсткий стайлгайд NASA по кодингу на Си, 10 правил. Зато каких, динамическую память нельзя, рекурсию нельзя, циклы с переменным кэпом нельзя. Ну хотя на космическом корабле циклы с неопределенным кэпом и правда лишнее
Ответить | Правка | К родителю #40 | Наверх | Cообщить модератору

45. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (45), 20-Июл-20, 11:17 
если не очевидно какой язык будет в конечном итоге лучше для проекта, то можно вложиться в написание "универсального" кода, например на HAXE: https://ru.wikipedia.org/wiki/Haxe
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

52. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от заминированный тапок (ok), 20-Июл-20, 11:28 
Haxe - это лишь Toolkit, для Haxe в любом случае нужно знать и Язык/Платформу под которую пишешь
(об этом и сами разработчики не раз заявляли(ют))

если Haxe с компиляцией в C#, то тебе нужно знать в итоге и C#
ну и тд

если Haxe в Natvie (C++/C), тогда нужно знать и особенности управления сборщика мусора (да, он тянет туда и Boehm), и типизацию данных и нативные типы данных (в C# и C/C++ свои обвязки Haxe) желательно тоже

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

65. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (45), 20-Июл-20, 11:50 
> Haxe - это лишь Toolkit

но и язык тоже

> нужно знать и Язык/Платформу под которую пишешь

а никто не обещал что будет легко

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

50. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (50), 20-Июл-20, 11:25 
Ничего производительнее Си для процессоров общего назначения пока не придумали. В остальном без разницы C++, Java, Haskell, используйте, что нравится. Производительность в наше время это вычисления на видеокарте, тут все эти языки бесполезны.
>от кастов типов даже.

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

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

84. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от alex312 (?), 20-Июл-20, 12:12 
>Ничего производительнее Си для процессоров общего назначения пока не придумали

Аноним - балаболище. Тут вот пару дней назад была тема про дырень в glibc, где меня все убеждали, и убедили, что С не может в нормальные оптимизации. Поэтому асм.

>Производительность в наше время это вычисления на видеокарте

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

>рай земной для любителя математики.

анон знает математику на уровне школы, возможно даже не на 5-ть.

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

100. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от КО (?), 20-Июл-20, 12:45 
>де меня все убеждали, и убедили, что С не может в нормальные оптимизации.

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

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

106. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от alex312 (?), 20-Июл-20, 13:04 
1. разговор шол про конкретную библиотеку (glibc), а не вообще. Не слышал чтобы ее разработчики заботились о других компиляторах, кроме gcc.
2. моя позиция была и осталась, если компилер настолько чудит, что на нем нельзя нормально написать memcpy - зачем такой компиль?
Ответить | Правка | Наверх | Cообщить модератору

138. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (138), 20-Июл-20, 15:16 
Это потому что ты малограмотный нуб, без опыта, но с очень ценным мнением. Иначе ты бы знал что написать memcpy на чистом C можно легко, а вот добиться максимально возможной производительности без ассемблера затруднительно.
Ответить | Правка | Наверх | Cообщить модератору

144. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 20-Июл-20, 16:05 
Денис ты?  извини не признал в гриме.
Ответить | Правка | Наверх | Cообщить модератору

162. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (138), 20-Июл-20, 17:15 
Это все что ты можешь сказать ?
Ответить | Правка | Наверх | Cообщить модератору

168. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 20-Июл-20, 17:44 
>Это все что ты можешь сказать ?

Это все, чего ты достоин.

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

127. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Сишникemail (?), 20-Июл-20, 14:24 
> И С к программированию на видяхах имеет небольшое отношение.

Да ну!
https://www.opennet.ru/opennews/art.shtml?num=52903
> Для языков C, C++ и Fortran реализована спецификация параллельного программирования OpenACC 2.6, определяющая средства для выноса операций (offloading) на GPU и специализированные процессоры, такие как NVIDIA PTX. Почти завершена реализация стандарта OpenMP 5.0 (Open Multi-Processing), определяющего API и способы применения методов параллельного программирования на многоядерных и гибридных (CPU+GPU/DSP) системах с общей памятью и блоками векторизации (SIMD). Добавлены такие возможности как условные выражения lastprivate, директивы scan и loop, выражения order и use_device_addr. Для OpenMP и OpenACC добавлена поддержка выноса операций (offloading) на GPU AMD Radeon (GCN) четвёртого (Fiji) и пятого поколений (VEGA 10/VEGA 20).

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

248. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от анон (?), 21-Июл-20, 11:01 
Лол, так это ты ныл про свое незнание интринсиков и опций gcc.
Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

254. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 11:35 
>Лол, так это ты ныл про свое незнание интринсиков и опций gcc.

Не,я ныл про то что разработчики glibc не осилили их заюзать.
А другие анонимы пели песни что это все очень трудно.

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

159. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 17:07 
> типы данных от лукавого, для машин всё числа, рай земной для любителя математики

Вы не правы. Во-первых, типы данных от математиков и пришли, вроде как Рассел начинал что-то такое придумывать, а потом подхватили в ФП. Во-вторых, чем дальше в математику, тем меньше чисел и больше букв. В-третьих, типы - это проверки, а проверок хотелось бы побольше и повсеобъемлющей

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

187. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Sw00p aka Jerom (?), 20-Июл-20, 21:29 
>Вы не правы.

Вы тоже не правы, так как не дали разъяснения неправоты на это утверждение "типы данных от лукавого, для машин всё числа".

>Во-первых, типы данных от математиков и пришли, вроде как Рассел начинал что-то такое придумывать, а потом подхватили в ФП.

Да, Рассел ввел понятия типа, для того чтобы избежать парадоксов, тип - как некая область (диапазон) значений (определений) некой функции.

>Во-вторых, чем дальше в математику, тем меньше чисел и больше букв.

Я бы сказал бы, тем меньше констант и больше переменных.

>В-третьих, типы - это проверки, а проверок хотелось бы побольше и повсеобъемлющей

Типы - не проверки, а некая область значений требующая проверки, а сами типы это допустимый её (области) диапазон. Рассел также ввел понятие иерархии типов.

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

213. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 02:09 
> Типы - не проверки, а некая область значений требующая проверки, а сами типы это допустимый её (области) диапазон. Рассел также ввел понятие иерархии типов.

Не, ну я согласен. Просто ведь можно же сделать систему типов (в контексте языка программирования систему) с жесткими проверками, как в Haskell или Agda (не пробовал, но там вроде ещё жестче. Ещё Idris из этой оперы). Можно, конечно, и систему типов с слабыми проверками сделать, как в Си. Но лучше же с сильными, чем с слабыми, не так ли? Лучше больше выловить в компайл тайме, чем искать баги или обнаруживать ошибки типов в рантайме.

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

55. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от mumu (ok), 20-Июл-20, 11:35 
математик и кластеры? Был бы просто математик, то однозначно Python + NumPy/SciPy и Matlab. Erlang заточен под многопоточку, но вы станете единственным кто будет использовать, поддерживать и развивать код и продукт. На C  что угодно будет быстрее, но в сто раз сложнее. Это как бы задача не для одного человека фулстек писать. Пишите себе прототипы на пайтонах, а студенты других специальностей уже будут думать, как это на hadoop накрутить.
Кстати, а ваша логика во всякие SQL не влезет? Там и кластеризация из коробки практически есть :)
p.s. никаких хаскелей и окамлов
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

62. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (62), 20-Июл-20, 11:43 
Если математика, то только FORTRAN
Ответить | Правка | Наверх | Cообщить модератору

63. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от lockywolf (ok), 20-Июл-20, 11:46 
За упоминание Матлаба надо сразу по пальцам бить, прямо не сходя с места.
Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

109. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от mumu (ok), 20-Июл-20, 13:06 
Ну наверное, действительно если задача не только провести рассчет, но и написать приложение, то это не сюда.
В своё время в инсте делал в нём работы по электродинамике и прочим физическим рассчётам. Никакой боли не испытывал, скорее наоборот.
Ответить | Правка | Наверх | Cообщить модератору

114. "Выпуск языка программирования Rust 1.45"  –6 +/
Сообщение от Аноним (114), 20-Июл-20, 13:27 
Матлаб вендузятен, поэтому плох. Нужны тру юникс приложения.
Ответить | Правка | Наверх | Cообщить модератору

123. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от НяшМяш (ok), 20-Июл-20, 14:05 
То-то я году в 2009 использовал нативный матлаб на линуксе в универе. Видать приснилось, да.
Ответить | Правка | Наверх | Cообщить модератору

164. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (3), 20-Июл-20, 17:23 
Проблема матлаба не в этом
Ответить | Правка | К родителю #114 | Наверх | Cообщить модератору

343. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от фттщ (?), 22-Июл-20, 01:01 
Ну Octave)
Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

110. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (110), 20-Июл-20, 13:07 
> Был бы просто математик, то однозначно Python + NumPy/SciPy

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

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

117. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (117), 20-Июл-20, 13:41 
Не слушай этого...
У нас все на питоне и все норм. Мыслить надо в абстракциях языка, а не пытаться переписывать всякие strcpy на питоне и орать - тормоза!
Ответить | Правка | Наверх | Cообщить модератору

120. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 20-Июл-20, 13:55 
> У нас все на питоне и все норм

У вас кто-нибудь программировать то умеет? Какие-нибудь языки знает?

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

128. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (128), 20-Июл-20, 14:26 
Взять и так бездарно обосрать Пайтон. Это надо уметь!
Ответить | Правка | К родителю #110 | Наверх | Cообщить модератору

132. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (-), 20-Июл-20, 14:32 
А кому этот хлам сейчас нужен? Живите в настоящем, а не в конце 20-го века.
Ответить | Правка | Наверх | Cообщить модератору

133. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 14:40 
> Эта связка не годится для математика. Ни один новый, реально работающий алгоритм
> реализовать только на питоне он не сможет. Питон годится только тем,  кому по методичке работать. И следовать ей по-буквенно.

Как хорошо, что Bram Cohen об этом в свое время не слышал :)

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

60. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от lockywolf (ok), 20-Июл-20, 11:42 
Fortran 2018.

Параллелизм почти автоматом, есть allocatable массивы, эдакий эрзац сборщика мусора, есть BLAS, LAPACK, Интеловские библиотеки, ООП, и тому подобные штуки. GDB поддерживает интроспекцию фортрановского кода, разработчики gfortran отзывчивые люди. Интеловский компилятор делает турбо-быстрый код, и бесплатен для личного употребления.

Многомерные массивы в стиле numpy срисованны с Фортрана вчистую. Научных библиотек для Фортрана миллион.

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


Ну, и вишенка на торте, я написал на Фортране интерпретатор Схемы. Если соблазнишься, законтрибуть в него obarray. ;-)

http://gitlab.com/Lockywolf/schemetran

Я учил его по Rouson+Xu, а также Modern Fortran Explained.

Хотя, честно говоря, писать на Фортране не особенно приятно :(.
В принципе, про Erlang не зря сверху написали. В похожем стиле также есть Chez Scheme.
У него есть akku.scm , хотя он, конечно, по сравнению с CPAN, жалок.

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

147. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от qetuo (?), 20-Июл-20, 16:27 
Почини описание проекта -- "lacks", не "leaks".
Ответить | Правка | Наверх | Cообщить модератору

246. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от dikiy_f90 (?), 21-Июл-20, 10:52 
Чем компилять, когда gfortran поддерживает 2003 неполностью.
Ответить | Правка | К родителю #60 | Наверх | Cообщить модератору

70. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Pirr (ok), 20-Июл-20, 11:57 
https://www.ada-ru.org/safe_secure_2012
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

73. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Урри (?), 20-Июл-20, 11:59 
Серебряной пули нет.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

91. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от Аноним (5), 20-Июл-20, 12:22 
Рекомендую попробовать C# - хоть и недолюбливаю мелкософт, но должен признать они в этом плане молодцы, приложили много усилий для развития языка, и на данный момент шарп намного приятней Java, очень балдею от async, LINQ, reactive extensions. Позволяет также много чего писать в функциональном стиле, если уж так тянет на Haskell. Также в отличии от гуглоподелок аля Go или Dart, он не так жестко завязан на одного вендора, и в долгосрочной перспективе чувствуется больше стабильности. Garbage collector и вся вот эта Managed тема конечно не для всех задач подходит, но если надо уж производительность - тогда C и C++ и вперед с песней :) Ржавчина выглядит очень заманчиво с крутой моделью памяти, присматриваюсь к нему постоянно, но пока ещё очень молодой язык, и уж очень специфичный имхо синтакс. Ладно, разглагольствовал, успехов вам в этом бурном программерском море!
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

94. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от TheFotoMag (ok), 20-Июл-20, 12:28 
>> студент-математик всяких алгоритмов хитрых

Знаю математиков с хитрыми алогритмаи. Зарабатывают поиском/сортирвкой.
Например, сортировкой, завершающейся за гарантированное число тактов процессора.
Сортировкой, занимающей гарантированный объем ОЗУ и не более. Например, 256 байт.
Очень-очень быстрой сортировкой, основывающейся на предположении (из хитрой хитрой теоремы), что значение в этой половине массива и возвращащейся к перебору, если ошибка. В основном ошибки нет и сортировка очень быстрА.
Всё на С++. Ваще всё. Просто всё на C++. Что я тебе и советую.

>> крутая и мощная система типов

ЗАБЕЙ :)
Тебе нужно знать, как работает компилтор и как он разматывает и оптимизирует ассемблер.
Во что он превращает эти «типы» и как оно выглядит в памяти.
Все «типы» и «крутые» — это просто операции процессра с регистрами.

Такчта GCC и Шланг.

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

153. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 16:48 
> Все «типы» и «крутые» — это просто операции процессра с регистрами.

Так-то оно так, да только эти типы вводят ограничения, а значит больше проверок. А больше проверок - больше шанс поймать ошибки в компайл тайме

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

201. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от TheFotoMag (ok), 21-Июл-20, 00:15 
>> Все «типы» и «крутые» — это просто операции процессра с регистрами.
> Так-то оно так, да только эти типы вводят ограничения, а значит больше
> проверок. А больше проверок - больше шанс поймать ошибки в компайл
> тайме

Ничто не мешает тебе делать это самостоятельно.

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

212. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 21-Июл-20, 02:05 
А я хочу, чтобы машина делала, за меня.
Ответить | Правка | Наверх | Cообщить модератору

96. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от Аноним (96), 20-Июл-20, 12:35 
> основные задачи сейчас состоят в реализации всяких алгоритмов хитрых

Julia. Лучше неё для математика сейчас ничего нет.

Кстати, на следующей неделе конференция с бесплатным веб-участием - https://juliacon.org/2020/tickets/

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

97. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (240), 20-Июл-20, 12:41 
> Я студент-математик, мои основные задачи сейчас состоят в реализации всяких алгоритмов хитрых. В основном пока что я делал только игрушечные кейсы, но я чую, что скоро понадобиться делать серьёзное вычисление, ресурсоемкое.

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

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

125. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от albb (ok), 20-Июл-20, 14:08 
Тут как-то в комментариях писали о каком-то диалекте Си, если не ошибаюсь, на котором пишут софт для автомобилей. Там как раз всё для безопасности сделано. Стандарт под это дело имеется.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

137. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 15:06 
Мб MISRA C
Ответить | Правка | Наверх | Cообщить модератору

143. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от albb (ok), 20-Июл-20, 15:58 
> Мб MISRA C

Ага, оно https://en.wikipedia.org/wiki/MISRA_C

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

145. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (145), 20-Июл-20, 16:11 
Если C тебе в целом норм был, то C++. Только в шаблоны не лезь и всё с твоими волосами будет хорошо.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

230. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от bOOster (ok), 21-Июл-20, 07:13 
Fortran
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

232. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Анон363 (?), 21-Июл-20, 08:24 
Математика? Лучше https://julialang.org нет.
Ответить | Правка | К родителю #19 | Наверх | Cообщить модератору

239. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (239), 21-Июл-20, 09:57 
JavaScript. Очень быстр (уже давно есть JIT/AOT) компиляция, лучший синтаксис из всех, тонны сахара, нормальное человеческое ооп на прототипах, поддержка функциональшины, асинхронность из коробки, кроссплатформенность, можно хоть в браузере исполнять, хоть на сервере, хоть в виде доктоп-приложения.

Пока что лучший язык из всех существующих.

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

244. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (240), 21-Июл-20, 10:35 
Совсем макаки страх потеряли, советую своё жопаскрипт для ресурсоёмких вычислений…
Ответить | Правка | Наверх | Cообщить модератору

251. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (251), 21-Июл-20, 11:17 
>для ресурсоёмких вычислений

Самое оно. Процедурами на JS внутри оракловой бд очень-очень большие выборки перемалываем.

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

256. "Выпуск языка программирования Rust 1.45"  –8 +/
Сообщение от Michael Shigorinemail (ok), 21-Июл-20, 12:30 
Это, если кому интересно, была белка-истеричка насчёт "ватности", "без Столмана лучше" и "sjw -- лучшее, что случалось с опенсорсом" (из темы про нелёгкую судьбу ALSA).  А, ещё торчок.  Любуйтесь, запоминайте.
Ответить | Правка | Наверх | Cообщить модератору

263. "Выпуск языка программирования Rust 1.45"  +7 +/
Сообщение от Аноним (240), 21-Июл-20, 12:52 
А это был возомнивший о себе вахтёр. Впрочем, все и так уже давно в курсе.
Ответить | Правка | Наверх | Cообщить модератору

280. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от Аноним (280), 21-Июл-20, 14:43 
Добавь это в свой ежедневный отчет иначе +15 рублей не засчитают, Миша. 🤑 И куратор лишний раз кнопку не нажмет чтобы баттплаг сделал бжжж-бжжж. 😂
Ответить | Правка | К родителю #256 | Наверх | Cообщить модератору

260. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 21-Июл-20, 12:46 
> Процедурами на JS внутри оракловой бд очень-очень большие выборки перемалываем.

А о том, что перемалывают на самом деле не «процедуры на JS», а сишный/плюсовый (а местами и асмовый) код, интерфейсом к которому эти процедуры являются, ты не задумывался?

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

262. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от alex312 (?), 21-Июл-20, 12:51 
>А о том, что перемалывают на самом деле не «процедуры на JS»,

А о том, что все это перемалывается процессором, а не каким-то С, ты не задумывался ?
Как там, Verilog уже выучил ?

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

285. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 21-Июл-20, 15:19 
Тебе кажется, что ты удачно сострил? Но нет. Код JS, скомпилированный твоим любимым JIT'ом, и вызываемый им код оракловского творения, не перекрываются, даже в разных областях памяти находятся. И несложно прикинуть, кто из них делает основную часть полезной работы, а кто только полученные байтики копирует.
Ответить | Правка | Наверх | Cообщить модератору

287. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 15:38 
>Тебе кажется, что ты удачно сострил?

Че девки не дают? почесать ЧСВ хочеться?

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

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

Так что давай, чеши свое ЧСВ в другом месте.

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

288. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 15:40 
>Тебе кажется, что ты удачно сострил?

Че девки не дают? почесать ЧСВ хочеться?

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

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

Так что давай, чеши свое ЧСВ в другом месте.

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

261. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 12:46 
>Совсем макаки страх потеряли, советую своё жопаскрипт для ресурсоёмких вычислений…

https://www.opennet.ru/opennews/art.shtml?num=52224

А чего добился ты?

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

267. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 21-Июл-20, 13:06 
Между которыми строчками я должен был прочесть о ресурсоёмких вычислениях?
Ответить | Правка | Наверх | Cообщить модератору

273. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 13:33 
Ключевые слова и фразы:
- математик Фабрис Беллар
- JavaScript
- Добавлены примеры программ для эффективного расчёта числа Пи с точностью до миллиарда чисел после запятой
Ответить | Правка | Наверх | Cообщить модератору

283. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (240), 21-Июл-20, 15:14 
1. Математики не всегда занимаются ресурсоёмкими вычислениями.
2. Пример добавлен как раз благодаря тому, что появилась поддержка BigDecimal, реализованная, представь себе, на C. До этого на чистом JS было слабо́.
Ответить | Правка | Наверх | Cообщить модератору

286. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 15:27 
>1. Математики не всегда занимаются ресурсоёмкими вычислениями.

Не знаю какой ты там из анонимов, но можеш это объяснить либо себе, либо другому анониму который возмутился предложением JavaScript.

>Пример добавлен как раз благодаря тому, что появилась поддержка BigDecimal, реализованная, представь себе, на C

да и похрен, С тут не уникален, с таким же успехом это могло быть реализовано на С++, паскале, ассемблере, расте ...

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

316. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 21-Июл-20, 17:40 
>> 1. Математики не всегда занимаются ресурсоёмкими вычислениями.
> Не знаю какой ты там из анонимов, но можеш это объяснить либо себе, либо другому анониму который возмутился предложением JavaScript.

Я 240, если ты циферку не видишь. Ресурсоёмкость у нас возникла не сама по себе, а в соответствии с потребностью тёзки №3:
> скоро понадобиться делать серьёзное вычисление, ресурсоемкое
> С тут не уникален, с таким же успехом это могло быть реализовано на С++, паскале, ассемблере, расте

Могло, не спорю. Только на JS не могло.

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

6. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от DEV (?), 20-Июл-20, 10:33 
Что бы получить собственное представление конечно нужно попробовать самому.


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

269. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 21-Июл-20, 13:17 
Совершенно точно. Судить о языках по отзывам в блогах -- неблагодарное и бесполезное занятие.
Ответить | Правка | Наверх | Cообщить модератору

7. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (7), 20-Июл-20, 10:37 
>> Пробовал в Си - как-то уж слишком опасно.

Будь опасным, в чём проблема? Проблема в управлении памятью, да? Ну так это. Это же не Си ей управляет, а ты. Думай, что делаешь, делов-то.

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

12. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (3), 20-Июл-20, 10:42 
Ну, как бы, я не особо себе доверяю. Плюс я писал проект на Си и немаленький, с ростом все сложнее услеживать. Людям свойственно ошибаться, баже лучшим из них, так почему бы не заставить машины проверять за нами как можно больше? Поэтому моя идеология такая - компилятор должен следить по максимуму. И типы проверять жёстко, и все прочее, в идеале вообще формальная верификация, как в seL4 (который, что интересно, написан на Си, но там док-во вроде побольше кода даже)
Ответить | Правка | Наверх | Cообщить модератору

37. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (7), 20-Июл-20, 11:07 
Вопрос не в доверии, а в организации процесса. Вот ты сам говоришь про seL4, а тем ребятам пришлось пойти на некие нестандартные ходы, чтобы добиться этой самой верификации. Но от Си они не отказались. В конечном итоге, всё зависит от цели. Если это pet project, например, то вообще плевать на логику и здравый смысл - бери любую фигню, которая нравится, хоть эзотерику. А если ты толерантный работник в инклюзивной компании, то начальство само примет решение о переезде с плюсов на раст, потому что так, банально, дешевле. Но для "массовых коммуникаций" они будут заливать про какие-то очешуенные преимущества инженерного характера. Которые, в общем, сводятся к тому, что человек с меньшим уровнем знаний и навыков может выдавать рабочий код для сравнительно сложного проекта. Смысл вышесказанного в том, что если тебе интересно именно программирование, то имеет смысл учиться работать со сложными штуками, а если основной интерес в зарплате, то тупо следи за трендами. Раст в тренде.
Ответить | Правка | Наверх | Cообщить модератору

116. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от anonom (?), 20-Июл-20, 13:36 
Valgrind
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

149. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 20-Июл-20, 16:42 
Valgrind (как и вообще динамический анализ) — не панацея. Все возможные комбинации входных данных ты тестами не покроешь.
Это не значит, что valgrind плох, и что динамический анализ не надо использовать. Надо. Но надо и помнить, что всех ошибок он не отловит.
Ответить | Правка | Наверх | Cообщить модератору

281. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (280), 21-Июл-20, 14:58 
PVS-Studio. /thread
Ответить | Правка | К родителю #116 | Наверх | Cообщить модератору

108. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от DEV (?), 20-Июл-20, 13:06 
а если проект пишут несколько программистов, и приходят всё новые и новые?
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

8. "Выпуск языка программирования Rust 1.45"  +7 +/
Сообщение от A.Stahl (ok), 20-Июл-20, 10:38 
PHP -- оно будет работать даже если ты попытаешься взять квадратный корень из массива. Безопасность ого-го! Простота просто ухх! Лёгок как  жопа воробья. Вот только не шустрый нифига, но как замена Башу вполне покатит.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

14. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 10:43 
Ты не поверишь, но я поддерживаю один php-проект, так что вопроса о том, программировать или нет на php, тут не стоит для меня
Ответить | Правка | Наверх | Cообщить модератору

38. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Анонолекс (?), 20-Июл-20, 11:07 
Чем баш не наш?
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

89. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от заминированный тапок (ok), 20-Июл-20, 12:21 
тестовыми паттернами, как минимум
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (41), 20-Июл-20, 11:11 
>Безопасность ого-го!

Wordpress подтверждает!

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

10. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (10), 20-Июл-20, 10:40 
А где оригинал пасты?
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

29. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 10:56 
Это и есть оригинал пасты. Так сказать "специально для оупен нет дот ру" 😃
Ответить | Правка | Наверх | Cообщить модератору

11. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Брат Анон (?), 20-Июл-20, 10:41 
Думаю, что Ржавый обречён. Тупо не взлетит по причине изначальной тяжести. Смотри на го, Модулу-2, и ещё лучше -- Компонентный Паскаль.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

79. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (41), 20-Июл-20, 12:05 
Говорят, есть следующая инкарнация Модулы - Modula-3
Ответить | Правка | Наверх | Cообщить модератору

362. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Брат Анон (?), 27-Июл-20, 13:45 
> Говорят, есть следующая инкарнация Модулы - Modula-3

Это не инкарнация. Это самостоятельная реализация, к тому же весьма обременённая.
Следующая инкарнация Модулы-2 -- оберон-2. А последняя версия из это ветки Оберон-7/2016. Для системщины -- весьма вкусно. Си завидует как может.

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

111. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (114), 20-Июл-20, 13:17 
Ты из сайта "информатика21"? Тамошние люди тащатся от Оберона и К. Паскаля. Вот только все эти паскали предназначены для экосистемы Виндовс.
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

361. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Брат Анон (?), 27-Июл-20, 13:43 
Не пори чушь, если не знаешь.
Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 20-Июл-20, 10:47 
Компилятор си сегодня отлавливает многие баги. Другие баги отлавливаются в рантайме по-умолчанию. Опасность си в багах, которые формально удовлетворяют компилятор и выглядят безобидно, по при этом приводят приводят к состоянию гонки, например. Но в си с этим гораздо попроще, чем в плюсах. Сейчас в компиляторах (в частности gcc) есть опять же средства отладочного инструментирования, которые укажут на проблемы. В общем, практического смысла в общем случае не использовать си нет -- он универсален и идеален примерно для всего.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

27. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 20-Июл-20, 10:54 
Ну вот развитие компайлеров, анализаторов и даже формальных верификаторов внушает доверие, конечно, но вот хотелось бы снизить число багов в рантайме, перенеся по возможности весь баг кетчинг на компайл тайм.

Да, гонки опасны, и вот я слышал в расте борроу чекер вроде не даёт делать их.

Плюсы не очень люблю, кстати, вроде бы vector и set и пр. хороши, но как-то в полюсах все запудрено, синтаксиса полно, за ещё плюс почти в каждой либе новое UB. Си в этом смысле все же попроще.

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

365. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (365), 06-Авг-20, 21:02 
>Да, гонки опасны, и вот я слышал в расте борроу чекер вроде не даёт делать их.

Только гонки по данным (За владение ресурсом)

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

20. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от C (?), 20-Июл-20, 10:50 
C#
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

28. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 10:55 
Та же Java в сущности, только от MS, с сахарком.
Ответить | Правка | Наверх | Cообщить модератору

74. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Урри (?), 20-Июл-20, 12:02 
С сахарком, блекджеком и финтифлюшками.
Чего только linq стоит - обмазаться и кайфовать.
Ответить | Правка | Наверх | Cообщить модератору

206. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (206), 21-Июл-20, 01:01 
Ваша джава памяти жрёт как бык помои! В сишарпе по оптимизированнее с этим делом, так что не нужно тут ля ля!
Ответить | Правка | К родителю #28 | Наверх | Cообщить модератору

32. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (32), 20-Июл-20, 11:02 
> Вот, ребята, у меня кризис. Не знаю, на чем программировать.

Можно попробовать на русском. А то беда какая-то везде с ним )

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

33. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Корец (?), 20-Июл-20, 11:03 
Чтоб не было опасно, учи язык, на котором пишешь! Peшeтo можно написать на любом языке.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

43. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Повидло19 (?), 20-Июл-20, 11:12 
Выбор очевиден. https://youtu.be/H4YRPdRXKFs
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

44. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Повидло19 (?), 20-Июл-20, 11:16 
Ну или чуть менее очевиден https://youtu.be/5-OjTPj7K54
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (3), 20-Июл-20, 11:24 
Лисп, кстати, мне всегда нравился своим изяществом
Ответить | Правка | Наверх | Cообщить модератору

76. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Урри (?), 20-Июл-20, 12:02 
"Божественный, безумно древний язык" (с)
Ответить | Правка | Наверх | Cообщить модератору

81. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от lockywolf (ok), 20-Июл-20, 12:10 
> "Божественный, безумно древний язык" (с)

Изящное оружие для более цивилизованной эпохи.

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

49. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 11:25 
Мсье имеет вкус, однако, кинул ссылку на этот шедевр, снимаю шляпу!
Ответить | Правка | К родителю #43 | Наверх | Cообщить модератору

77. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (77), 20-Июл-20, 12:03 
Ну если не толстишь, то ладно.
Ни в коем случае не бери С и не слушай ананимасов с опеннета. С выглядит очень просто, но эта простота обманчива. В нем дохрена тонкостей. Чтобы писать на нем надежно, нужно обмазать весь код рантайм проверками, вместо которых в нормальном языке есть компилятор, система типов и макросы. Чтобы писать на нем быстро, нужно искать хотспоты, смотреть ассемблерный код и тюнить исходник под кодогенератор. Санитайзеры не помогут тебе. Они работают в рантайме, код с ними все равно надо тестировать.

Попробовать Rust решительно стоит.

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

99. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (99), 20-Июл-20, 12:42 
Раст безопасен и быстр потому, что везде есть таблички unsafe. Предупрежден - значит сразу становишься умнее.В С быстро отупеешь, потому что весь код unsafe и можно поймать все UB от компиляторов (у каждого компилятора свой список UB и багов). Только не надо говорить, что UB это свойство языка. В погоне за оптимизацией откидывается весь здравый смысл и язык не причем. Язык создавался универсальным, чтобы не ограничивать создание компиляторов на весь зоопарк аппаратных платформ. Но смузихлебы то, что не прописано жестко в языке считают UB.
Ответить | Правка | Наверх | Cообщить модератору

122. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 20-Июл-20, 14:00 
1. C был создан в 70-х, когда компы,в соеднем, были слабее соверменных микроконтроллеров.
2. UB описаны в стандартах С, вот проклятые смузихлебы, и туда уже добрались.
Ответить | Правка | Наверх | Cообщить модератору

129. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (129), 20-Июл-20, 14:28 
UB это свойство реальности, тут может произойти что угодно. К счастью с разной и существенно отличной вероятностью. Иначе не было бы модулей памяти с ECC и т.п. Сам попадал на такое когда компилятор ругнулся на loooup, я удивился и посмотрел код, а там правильно lookup. Потом оказалось одна планка памяти сбоила. UB нет только в абстрактно математическом мире.
Вопрос как применить эти абстракции в реальности...

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

Только вот объём и сложность задач растёт. Также растёт зависимость цивилизации от этих решений.
В любом случае должно было бы появится что-то для облечения этого процесса.
Думаю Rust это неплохой шаг в верную сторону.

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

113. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от vladimir (??), 20-Июл-20, 13:26 
golang
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

155. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (240), 20-Июл-20, 16:55 
Коль скоро все кинулись обсуждать опасность C, внесу свои 5 копеек. Если бы у меня стояла задача сделать что-то на C максимально безопасно и с нуля, я бы попробовал заюзать frama-c, добавляя в код ACLS-аннотации. Нет, пока не пробовал: задачи подходящей не было и не предвидится в ближайшем будущем. Если у кого есть опыт, поделитесь.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

214. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 02:11 
А вот за наводку на фраму спасибо, надо будет покрутит, что из себя представляет. Я вот из подобных систем только по Isabelle начинал книжку читать (правда Изабель - вещь несколько более широкого плана, теорем прувер вообще, а не только для проверки программ)
Ответить | Правка | Наверх | Cообщить модератору

205. Скрыто модератором  +/
Сообщение от Аноним (205), 21-Июл-20, 01:01 
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

207. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от СССР (?), 21-Июл-20, 01:02 
бери С++ и либы/фрэймворки в которых  реализованы контейнера по работе с данными (так проще если боитесь этих указателей). Я спользую QT,  в котором реализованны классы по работе с БД, структурами данных, другими словами разницы в написании бэкендов ровно ноль между ПХП и QT, работа с данными просто сказка, все автоматом. Но если вы стали более опытным, вы познали указатели, то вас за уши не оттянешь от их применения. Указатели это мощь и власть для программиста. С++ и имеющиеся классы для работы с данными предоставляют гибкий выбор между автоматизацией по работе с данными и скоростью написания кода, и качеством кода в рамках скорости выполнения и его объема.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

216. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 02:17 
> Указатели это мощь и власть для программиста

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

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

223. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от СССР (?), 21-Июл-20, 02:56 
вот и я про безопасность. когда ты полностью понимаешь какие данные ты хранишь, как ты их обрабатываешь, это и есть безопасность, а когда твоими данными манипулирует сборщик мусора ). лично я насмотрелся на то как работают джава сервиси в большими данными, весьма поучительно.
Если программист с опытом 2-3 года, то ему не сложно все эти UB обойти, ну опыт такое дело.
Но если задача ставится обучить программиста что бы тот через месяц стал писать контент для вэба ) или особо  одаренный программист который после трех лет практики наступает в с++ на одни и теже грабли. то почему всякие модники начинают хаить си и с++ , может дело не в языке а именно в людях?
и если постоянно все отдавать на анализ и принятие решений машине то что в итоге? программист станет бакланом. визуально все тот же только вот в голове уже будет пустота. про безопасность такого будущего я уже не стану говорить.
Ответить | Правка | Наверх | Cообщить модератору

225. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (225), 21-Июл-20, 03:26 
> а когда твоими данными манипулирует сборщик мусора

Вот тем Rust и интересен, что сборщика мусора нет.

> Если программист с опытом 2-3 года, то ему не сложно все эти UB обойти, ну опыт такое дело.

Да вот что-то не исполняется этот идеальный мир, всё равно поток уязвимостей из-за ошибок в си коде не иссякает

> почему всякие модники начинают хаить си и с++ , может дело не в языке а именно в людях?

Хаять это плохо. Конструктивно критиковать - хорошо. Наивно полагать, что эти языки являются вершиной совершенства.

> и если постоянно все отдавать на анализ и принятие решений машине то что в итоге?

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

Вот я вообще не понимаю такого мазохизма, что "надо самому", "надо самому". Если машина помогает производить контроль качества, почему нет? Это вот тоже самое, если говорить "да зачем нужны всякие там системы контроля качества на заводах, главное не расслабляться и собирать прямыми руками". А то, что ошибки изредка случаются у всех, об этом, ну, умолчим.

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

228. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от СССР (?), 21-Июл-20, 04:55 
ну как нет, есть он там сборщики то )
по поводу ошибок, я помню в 1996 году был второй год в нашем вузе когда ввели платное обучение. уже в 1997 году в универе каких только мастей стутентов можно было увидеть,  в то время очень много поступило детей богатых мам и пап, 1998 большая масса студентов сидела на героине, а потому что в голове опилки и желания покутить, а в вуз шли так как модно, + город, отрыв от родителей и все такое. Не все конечно, было много и уникальных людей, умных, но сама система высшего образования порушилась. Вот поэтому так много ошибок в коде, потому что кодеры такие а не язык, и сейчас мы пытаемся подстроится под эту действительность, а с реформами в школах так и вообще что бы избежать ошибок нужно будет писать массово на бэйсике, си точно не осилят
Ответить | Правка | Наверх | Cообщить модератору

242. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 10:24 
>ну как нет, есть он там сборщики то )

сборщик в расте такой же как и в С++.

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

229. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от СССР (?), 21-Июл-20, 05:02 
> В итоге у программиста будет больше времени на решение задач предметной области.

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

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

243. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от alex312 (?), 21-Июл-20, 10:31 
>в итоге программиста не будет )

А вот, с философской точки зрения, программисты то и не нужны. Нужен результат их работы, и если в будующем появяться какие-то другие *исты (инженеры чегото-там), которые будут выдавать результат качественнее и дешевле, тут-то программистов и не станет.

>к чему новый язык по сути отличающийся только тем что в си

А к чему С вообще ? пиши на асме, или вообще машкодами. Или что, слабо ?

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

265. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 13:03 
> в итоге программиста не будет )

Ну и пусть, главное решение задач. Программиста и так толком нет

> А скажи в чем пролемма если за ебя уже давным давно все написали в либах, в классах, бери и используй.

Ну в быту проблему нет. В критических системах проблема в доверии

> Зачем новый язык со странным синтаксисом под который нет инфраструктуры и т.п. зачем работа ради таботы?

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

> к чему новый язык по сути отличающийся только тем что в си есть указатели и о них может зеленый програмер выстрелить себе в ногу?

Любые программеры стреляют себе в ногу, увы. Вы же понимаете, что в той же NASA пытаюся формально прочекать код корабля по полной? И в процессором производстве кристаллы формально верифицируют со времён Pentium FDIV. Скажете, что тоже дурачки в Intel сидят, косячат?

> Ну что реально указатели это проблема?

Проблема в допускании языком запрещенных операций, в т.ч. и с указателями. А смысл языка в том, чтобы их не допускать. Иначе можно на ASM++ прогать без проверок

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

221. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноньимъ (?), 21-Июл-20, 02:50 
Думаю вам нужно найти работу.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

257. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Aytishnik.com (ok), 21-Июл-20, 12:32 
Учи C, С++ и за Rust будущее, тоже учи
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

350. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Сергей Пробелов (ok), 22-Июл-20, 12:02 
Добрый день!

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

Например, если заниматься непосредственно математикой и алгоритмами, я бы однозначно рекомендовал NumPy+SciPy - это обёртка на Python вокруг многолетних отработанных C и Fortran алгоритмов. Требует задание типов при работе со своими данными, желательно заранее выделять память, требует хорошего знания самой библиотеки. Условно говоря, это свой язык внутри Python.

В плане работы на перспективу рекомендую обратить внимание на Golang и Rust. Оба языка разрабатываются с учётом выполнения распределённых вычислений.

Под Go активно развивается аналог NumPy. Может быть Вам будет интересно приложить свою руку в развитии данного проекта.

Так же рекомендую почитать историю развития архитектуры и языков программирования. Возможно, это поможет Вам определиться. Например, Golang разработан Гуглом не с нуля, а пришёл из Plan 9 - язык Limbo. Соответственно, позиционируется как более современное средство разработки чем C от команды людей, которые сами эти Си придумывали и развивали.

Мои коллеги по Вашей части используют кто C++ (помоложе), кто Pascal (сильно постарше). Но их выбор скорее был сделан за них ещё в институте. Наверняка, были причины и это не худший вариант.

Важно помнить: не в большой PCшке дело, главное водить умело!

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

9. "Выпуск языка программирования Rust 1.45"  –37 +/
Сообщение от Fracta1L (ok), 20-Июл-20, 10:39 
Гробовщик дырявой сишки. Надеюсь, лет через 10 программирование на С будет считаться профнепригодностью.
Ответить | Правка | Наверх | Cообщить модератору

13. "Выпуск языка программирования Rust 1.45"  –15 +/
Сообщение от Аноним (10), 20-Июл-20, 10:42 
Вообще-то уже. Такого говнокода, как у сишников и некоторых питонщиков, я даже в проектах на вижуал бейсике и паскале (сам ы на них не пишу, но иногда прихтдится реверс-инженирить из исходников) не видел.
Ответить | Правка | Наверх | Cообщить модератору

17. "Выпуск языка программирования Rust 1.45"  –11 +/
Сообщение от Fracta1L (ok), 20-Июл-20, 10:48 
Пока что С-фанбои (по большей части те что больше приветмира на сишке ничего не писали) активно копротивляются и верещат всякие мантры типа "язык это просто инструмент!!!", "надо просто быть внимательным и писать правильный код!!!!"
Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (15), 20-Июл-20, 10:51 
Видимо то, что ты принял за гoвнокод, было написано не от хорошей жизни. Эффективный код не выглядит красиво (говорю про си и питон), а ты сейчас демонстрируешь некомпетентность.
Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

23. "Выпуск языка программирования Rust 1.45"  –5 +/
Сообщение от Fracta1L (ok), 20-Июл-20, 10:52 
Подъехали авторы "эффективного" writeonly кода с 20 операторами в одной строке
Ответить | Правка | Наверх | Cообщить модератору

54. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (50), 20-Июл-20, 11:32 
Конечно эта строчку можно разобрать на 20 строчек, но читабельнее от этого код не станет. В любом случае придётся держать кучу переменных в голове.
Ответить | Правка | Наверх | Cообщить модератору

58. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 20-Июл-20, 11:40 
конечто же станет.
Если в одной сроке реально 20 опрераций, то она будет ддлинной, даже если имена переменных однобуквенные.
Значит первое что надо сделать - дать переменным нормальные имена. И вуаля, уже 20 опреаций в одну строку не влазит.
Ответить | Правка | Наверх | Cообщить модератору

72. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Fracta1L (ok), 20-Июл-20, 11:58 
> читабельнее от этого код не станет

Для всех будет лучше, если ты пойдёшь мести улицы

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

83. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от lockywolf (ok), 20-Июл-20, 12:12 
> Конечно эта строчку можно разобрать на 20 строчек, но читабельнее от этого
> код не станет. В любом случае придётся держать кучу переменных в
> голове.

У настоящих мужчин дебаггер умеет ходить по горизонтали.

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

87. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (50), 20-Июл-20, 12:16 
> У настоящих мужчин дебаггер умеет ходить по горизонтали.

Видел такое кстати, хоть и не помню где. Но настоящие мужчины в отладчике не нуждаются! Можешь спросить Линуса, он подтвердит.

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

31. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от alex312 (?), 20-Июл-20, 11:00 
>Эффективный код не выглядит красиво

Без конкретных примеров - это "бла-бла-бла".
А я говорю, что эффективный код может быть красивым, если немного постараться.

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

39. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 20-Июл-20, 11:08 
Это зависит от задачи. Скажем, тонны лапшекода не всегда и не во всём будут эффективней и важно учитывать, во что именно развернёт твой код компилятор.
Ответить | Правка | Наверх | Cообщить модератору

85. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Урри (?), 20-Июл-20, 12:14 
Ну вот тебе конкретный пример - кусок эффективного кода, который использует пара миллиардов устройств во всем мире. А конкретнее - ютубовский av1 декодер.
https://aomedia.googlesource.com/aom/+/refs/heads/master/aom...

        a0_x128 = vld1q_u8(above + base_x + base_shift + j);
        a1_x128 = vld1q_u8(above + base_x + base_shift + 1 + j);
        vector_shuffle(&a0_x128, &v_zero, base_shift);
        vector_shuffle(&a1_x128, &v_zero, base_shift);
        a0_x = vzipq_u8(a0_x128, v_zero);
        a1_x = vzipq_u8(a1_x128, v_zero);
        r6.val[0] = vshlq_n_u16(vaddq_u16(c0123.val[0], j256), 6);
        r6.val[1] = vshlq_n_u16(vaddq_u16(c0123.val[1], j256), 6);
        shift.val[0] =
            vshrq_n_u16(vandq_u16(vsubq_u16(r6.val[0], ydx), c3f), 1);
        shift.val[1] =
            vshrq_n_u16(vandq_u16(vsubq_u16(r6.val[1], ydx), c3f), 1);
        diff.val[0] =
            vsubq_u16(vreinterpretq_u16_u8(a1_x.val[0]),
                      vreinterpretq_u16_u8(a0_x.val[0]));  // a[x+1] - a[x]
        diff.val[1] =
            vsubq_u16(vreinterpretq_u16_u8(a1_x.val[1]),
                      vreinterpretq_u16_u8(a0_x.val[1]));  // a[x+1] - a[x]
        a32.val[0] = vmlaq_u16(a16, vreinterpretq_u16_u8(a0_x.val[0]),
                               v_32);  // a[x] * 32 + 16
        a32.val[1] = vmlaq_u16(a16, vreinterpretq_u16_u8(a0_x.val[1]),
                               v_32);  // a[x] * 32 + 16
        res.val[0] = vmlaq_u16(a32.val[0], diff.val[0], shift.val[0]);
        res.val[1] = vmlaq_u16(a32.val[1], diff.val[1], shift.val[1]);
        resx =
            vcombine_u8(vshrn_n_u16(res.val[0], 5), vshrn_n_u16(res.val[1], 5));

Перепишешь, чтобы было красивее и не менее эффективно?

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

93. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (77), 20-Июл-20, 12:26 
Был бы нормальный язык вместо С можно бы было вместо вызова векторных функций операторы использовать:

>r6.val[0] = vshlq_n_u16(vaddq_u16(c0123.val[0], j256), 6);

r6.val[0] = (c0123.val[0] + j256) << 6;

и уже не такой треш.

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

101. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 20-Июл-20, 12:46 
А что это за язык?
Ответить | Правка | Наверх | Cообщить модератору

126. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от НяшМяш (ok), 20-Июл-20, 14:10 
Это даже на JavaScript корректный синтаксис )
Ответить | Правка | Наверх | Cообщить модератору

158. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (240), 20-Июл-20, 17:06 
Да хрен с ним, с синтаксисом. Что за язык вот это преобразует в векторные инструкции?
Ответить | Правка | Наверх | Cообщить модератору

184. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (77), 20-Июл-20, 21:26 
Да есть тут у нас в 2020 пара языков с перегрузкой операторов лол! Плюсы так умеют, например.
Ответить | Правка | Наверх | Cообщить модератору

200. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (240), 20-Июл-20, 23:33 
А, то есть для того, чтобы это работало, надо на каждую строчку несколько десятков перегруженных функций определить? Спасибо, чего-то подобного я и ожидал.
Ответить | Правка | Наверх | Cообщить модератору

318. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (77), 21-Июл-20, 18:42 
>А, то есть для того, чтобы это работало, надо на каждую строчку несколько десятков перегруженных функций определить?

Почти. Если примерно почувствовать. А если точнее то 7 перегруженных операторов на эти 17 строк.

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

348. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от КО (?), 22-Июл-20, 10:17 
Любой в котором есть специальные примитивы под это. Типа векторов длиной 128,256,512.
:)
Ответить | Правка | К родителю #158 | Наверх | Cообщить модератору

134. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от n00by (ok), 20-Июл-20, 14:44 
Как быть с остальными строками, который Вы не соизволили показать на "нормальном языке"?
Ответить | Правка | К родителю #93 | Наверх | Cообщить модератору

191. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (77), 20-Июл-20, 21:59 
a0_x128 = simd::u8x16::load(above + base_x + base_shift + j);
a1_x128 = simd::u8x16::load(above + base_x + base_shift + 1 + j);

vector_shuffle(&a0_x128, &v_zero, base_shift);
vector_shuffle(&a1_x128, &v_zero, base_shift);

a0_x = a0_x128.zip(v_zero);
a1_x = a1_x128.zip(v_zero);

r6.val[0] = (c0123.val[0] + j256) << 6;
r6.val[1] = (c0123.val[1] + j256) << 6;

shift.val[0] = ((r6.val[0] - ydx) & c3f) >> 1;
shift.val[1] = ((r6.val[1] - ydx) & c3f) >> 1;

diff.val[0] = (simd::u16x4)(a1_x.val[0]) - (simd::u16x4)(a0_x.val[0]); // a[x+1] - a[x]
diff.val[1] = (simd::u16x4)(a1_x.val[1]) - (simd::u16x4)(a0_x.val[1]); // a[x+1] - a[x]

a32.val[0] = a16.mac((simd::u16x4)a0_x.val[0]), v_32);  // a[x] * 32 + 16
a32.val[1] = a16.mac((simd::u16x4)a0_x.val[1]), v_32);  // a[x] * 32 + 16

res.val[0] = a32.val[0].mac(diff.val[0], shift.val[0]);
res.val[1] = a32.val[1].mac(diff.val[1], shift.val[1]);
        
resx = simd::combine(res.val[0] >> 5, res.val[1] >> 5);

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

320. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от n00by (ok), 21-Июл-20, 19:01 
Спасибо. По большому счёту, мало что изменилось. Всё так же требует подглядывать в талмуд по ассемблеру/интринсикам. Не часто встретишь тех, кто готов заодно и операторы перегружать.
Ответить | Правка | Наверх | Cообщить модератору

95. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от alex312 (?), 20-Июл-20, 12:29 
посмотрел исходник в оригинальном оформлении, а не то как тут вставилось.

Собственно, а где некарсиво ?

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

154. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Анонимъ (?), 20-Июл-20, 16:48 
Можно обёртку написать для этого всего. Всё заинлайнится и будет эффективно в той же степени, но выглядеть красивше. Но это имеет смысл делать только при условии, что такого кода много. Иначе будет оверинжиниринг.

Вообще тут кроме слишком короткой длинны строки ничего плохого по сути и нет.

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

224. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноньимъ (?), 21-Июл-20, 02:57 
Вы делаете что-то очень неправильно если вам нужно эффективный код на Питоне писать.

Про Си это скорее миф.
Одно дело когда ты пишешь под одну единственную платформу и под один конкретный процессор.
Но этого уже небывает в природе.

А предварительная оптимизация вообще плохой тон.

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

326. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 21-Июл-20, 19:43 
Вы наверное не видели "хайлоад", если у вас такие вопросы. Эффективность использования памяти и процессора не на последнем месте, когда нам надо забить все доступные ресурсы ноды и ограничение не в питоне. Плохой неэффективный код будет "ограничением питона" примерно сразу. Небольшая "оптимизация" зачастую позволяет выжать ещё 10 раз по столько же.
Ответить | Правка | Наверх | Cообщить модератору

341. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноньимъ (?), 22-Июл-20, 00:33 
Хайлоад на Питоне?

У меня конечно большие вопросы.
Я бы конечно с теми кто такое бы мне предложил дел бы не имел.

Но зная конечно о том какой треш происходит в индустрии могу представить что такое где-то есть.

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

344. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 22-Июл-20, 06:02 
Хм… То же самое могу сказать о людях вот с подобным отношением. Есть множество областей, где ограничивающим фактором является не скорость выполнения. Куда чаще возникает ситуация, когда памяти расходуется слишком много (и нет, дело не в питоне). Но, в любом случае, скорость разработки решения и удобство его масштабирования и сопровождения однозначно говорят в пользу связки питона с каким-нибудь си -- по моему опыту код на питоне любой сложности не содержит ошибок и работает сразу благодаря своей специфике, а это значительное преимущество.
Ответить | Правка | Наверх | Cообщить модератору

345. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноньимъ (?), 22-Июл-20, 06:16 
Так если скорость и память не ограничивающие факторы, то это не хайлоад.

Вы меня выше в непонимании хайлоада обвинили.

Сайтики на десяток параллельных пользователей это не хайлоад.

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

А чрезмерный расход памяти это архитектурная проблема, ваше приложение от того что оно как хром всё ОЗУ съело хайлоадом не стало.

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

353. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 22-Июл-20, 20:45 
Красивые абстракции не будут бесплатными. Они будут очень, очень, очень платными. Профилирование проводили, и даже были эксперименты с разными компилируемыми языками. Не такой и большой оверхэд по памяти у питона, даже можно сказать, он минимальный по итогу. А процессор вообще не узкое место. Не "в лоб", конечно, чистый питон это такое себе развлечение. Конечно приятно, когда совсем не нужно тратиться на скрипты, но стоимость сопровождения значительно возрастает.
Ответить | Правка | Наверх | Cообщить модератору

346. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноньимъ (?), 22-Июл-20, 06:22 
>когда нам надо забить все доступные ресурсы ноды

Я неспросил сразу, что за нода, а теперь испугался, вдруг веб сервер жаваскриптовый.

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

51. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от n00by (ok), 20-Июл-20, 11:28 
> иногда прихтдится реверс-инженирить из исходников

Вообще-то реверс -- это когда без исходников, а не взять готовые сорцы и переписать на другом языке.

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

53. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 11:31 
Тут видимо на намёк на то, как сложно разбираться в этих сорцах
Ответить | Правка | Наверх | Cообщить модератору

56. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от n00by (ok), 20-Июл-20, 11:36 
А "там" был намёк, почему ему сложно разбираться.
Ответить | Правка | Наверх | Cообщить модератору

98. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (-), 20-Июл-20, 12:41 
> Такого говнокода, как у сишников и некоторых питонщиков

питонщики - это не программисты, а интеграторы. Им можно.

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

16. "Выпуск языка программирования Rust 1.45"  +10 +/
Сообщение от Совершенно другой аноним (?), 20-Июл-20, 10:47 
Замечательный гробовщик, со встроенным UB, как оказалось.
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

80. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (77), 20-Июл-20, 12:09 
В одном языке UB находят и исправляют, в другом UB - священная корова.
Ответить | Правка | Наверх | Cообщить модератору

104. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (240), 20-Июл-20, 12:58 
> со встроенным UB, как оказалось.

Что значит — оказалось? Оно всегда было задокументировано.

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

121. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Совершенно другой аноним (?), 20-Июл-20, 13:57 
>> со встроенным UB, как оказалось.
> Что значит — оказалось? Оно всегда было задокументировано.

э.. так по что-же вы C пинаете - там эти UB вообще в утверждённом международном стандарте задокументированы с подписями и мокрыми печатями. Или если в Rust-е задокументировано где-то в потрохах LLVM, то это можно, а в C в официальном документе на язык - ни за боже мой!

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

156. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (240), 20-Июл-20, 16:59 
Я? Я не пинаю, я сишечку нежно люблю.
А в расте задокументировано вовсе не в потрохах LLVM, а намного ближе. Причём там такое UB, что оно в дебажных сборках ведёт (или вело до вот этого вот релиза, нет сейчас времени вникать) себя не так, как в обычных. Привет Гейзенбергу.
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (18), 20-Июл-20, 10:49 
А что тогда делать любителям дырок и буферов?
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

22. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Fracta1L (ok), 20-Июл-20, 10:52 
Переполненных буферов, ты хотел сказать)
Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 20-Июл-20, 10:53 
для любтелей дырок и буферов оставлена лазейка в виде unsafe :)
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

61. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (61), 20-Июл-20, 11:42 
Любителям дырок и буферов вообще тут делать нечего. Ну в смысле на опеннете.
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

35. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от Корец (?), 20-Июл-20, 11:04 
Дырявый тут только фрактал, который до сих пор не может выучить божественную сишечку!
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

42. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (129), 20-Июл-20, 11:11 
Хотя в целом подход Rust мне нравится и считаю его перспективным, но надеюсь никогда не будет такого что знание и умение использовать что-то будет определять не пригодность.
В целом лучше было бы, чтобы Rust еще какое-то время чувствовал на себе бремя доказывать свою эффективность, безопасность и т.д. А после того как он займёт свою нишу и получит достаточно широкое признание пусть "победит сильнейший", "порешает рыночек" и т.п.
Лучше пусть это потребует достаточно много времени, без каких-то "эффектных" менеджеров будь то корпорации или сообщество.
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

222. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноньимъ (?), 21-Июл-20, 02:51 
Незнаю почему вас так хейтят.

Си как яп просто глупая шутка.

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

234. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Fracta1L (ok), 21-Июл-20, 08:34 
Не обращай внимания на местных рванин
Ответить | Правка | Наверх | Cообщить модератору

358. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (358), 24-Июл-20, 13:29 
С разморозкой, Си безопаснее хруста. В хрусте unsafe блоки, а в Си нет
Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

26. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Servey (?), 20-Июл-20, 10:54 
Почему сабжа нет в пакетах под RHEL ?
Ответить | Правка | Наверх | Cообщить модератору

105. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (240), 20-Июл-20, 12:59 
Потому что это RHEL, в нём всегда так.
Ответить | Правка | Наверх | Cообщить модератору

139. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Servey (?), 20-Июл-20, 15:17 
Т.е. к продакшену еще не готов.
Ответить | Правка | Наверх | Cообщить модератору

142. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Servey (?), 20-Июл-20, 15:29 
Посмотрел Федору, тоже нет рпм, т.о. нет ни одной програмки на rust в дистрибутиве. Иначе в кожи ее не собрать.
Странно версия проги уже 1.х а так ни одной полезной програмки на нем не написали еще.
Ответить | Правка | К родителю #105 | Наверх | Cообщить модератору

175. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (240), 20-Июл-20, 19:45 
Неужели даже Firefox нет?
Ответить | Правка | Наверх | Cообщить модератору

57. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от DEV (?), 20-Июл-20, 11:38 
по скачиванию LOG-пакеджа, заметно что всё больше продакшен кода на RUST
создается:
https://crates.io/crates/log
Ответить | Правка | Наверх | Cообщить модератору

66. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Сишникemail (?), 20-Июл-20, 11:51 
NPM 2.0
Ответить | Правка | Наверх | Cообщить модератору

173. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 20-Июл-20, 18:53 
И как-же это ты такой вывод сделал что это потому что именно продакшен код на rust
Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

59. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от n00by (ok), 20-Июл-20, 11:41 
IA SDM:

If a converted result cannot be represented in the destination
format, the floating-point invalid exception is raised, and if this exception is masked, the indefinite integer value
(2 w-1 , where w represents the number of bits in the destination format) is returned.

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

64. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (64), 20-Июл-20, 11:46 
Хахахахахаха, вот умора! Даже си компилятор при преобразовании из float в char выдает предупреждение, а "заточенный под безопасность" хваленый руст это пропускает что выливается в неопределённое поведение.
Ответить | Правка | Наверх | Cообщить модератору

68. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от YetAnotherOnanym (ok), 20-Июл-20, 11:54 
Спасибо хоть теперь поведение определённое (хоть и нелепое) и задокументированное.
Ответить | Правка | Наверх | Cообщить модератору

69. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Сишникemail (?), 20-Июл-20, 11:55 
Да у них там тысячи незакрытых ишью висят, много критикал багов, как они это разгребать будут, я хз.
Ответить | Правка | К родителю #64 | Наверх | Cообщить модератору

78. "Выпуск языка программирования Rust 1.45"  +7 +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 12:04 
> Хахахахахаха, вот умора! Даже си компилятор при преобразовании из float в char выдает предупреждение

Ну давайте посмотрим. И раз:


cat hello2.c && clang -Wall -Wextra hello2.c && ./a.out
#include <stdio.h>
int main(void) {
        char x = (char)1.04E+17;
    printf("%c",x);
    return 0;
}
(%  

и два

% gcc -Wall -Wextra hello2.c&& ./a.out  
%

Ой?

И три

% cat hello.rs && rustc hello.rs                                                  
fn main() {
    let x:u8 = 1.04E+17;
    println!("Hello, world! {}",x);
}
error[E0308]: mismatched types
--> hello.rs:2:16
  |
2 |     let x:u8 = 1.04E+17;
  |           --   ^^^^^^^^ expected `u8`, found floating-point number
  |           |
  |           expected due to this

error: aborting due to previous error

% rustc --version                                                                
rustc 1.43.1


В общем, да, умора-умора. Особенно когда очередные "спецы" не различают между _явным и неявным_ приведением типов 🙄

ЗЫ:
собственно по теме "даже си компилятор":
ISO/IEC 9899:TC3
6.3.1.4
> When a finite value of real floating type is converted to an integer type other than _Bool,
> the fractional part is discarded (i.e., the value is truncated toward zero). If the value of
> the integral part cannot be represented by the integer type, the behavior is undefined.
>

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

112. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (112), 20-Июл-20, 13:17 
Дурачок, это два разных кода.

Аналог твоего сишного кода на расте выглядит так:
fn main() {
    let x:u8 = 1.04E+17 as u8;
    println!("Hello, world! {}",x);
}

И он выводит:
Hello, world! 255

Аналог твоего растоманского кода на си:
#include <stdio.h>
int main(void) {
        char x = 1.04E+17;
printf("%c",x);
return 0;
}

И он выводит:
<source>:3:18: warning: implicit conversion of out of range value from 'double' to 'char' is undefined [-Wliteral-conversion]

        char x = 1.04E+17;

             ~   ^~~~~~~~

1 warning generated.

Растоманы как всегда манипулируют быдлом, а те и рады.

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

115. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 13:32 
> Дурачок, это два разных кода.

Умничка моя, эти "коды" соответствуют _твоему_ же сравнению "Даже си компилятор при преобразовании из float в char выдает предупреждение" с новостным "операция преобразования 'as' выполняет проверку на переполнение и ...". Конечно же это будут два разных кода :)

> Аналог твоего сишного кода на расте выглядит так:
> fn main() {
>     let x:u8 = 1.04E+17 as u8;
>     println!("Hello, world! {}",x);
> }

"Спец" ты мой анонимный -- это вот как раз и есть _явное преобразование_ "операцией 'as'".
Как в примере новости. Для того и был приведен аналог того ржавого кода (возможно тебя сбила с толку другая циферка? Так я не гордый, возьму ту из новости):

 
% cat hello2.c && gcc -Wall -Wextra hello2.c && ./a.out
#include <stdio.h>
int main(void) {
        char x = (char)300.0;
    printf("%x",x);
    return 0;
}
7f%
% clang -Wall -Wextra hello2.c &&  ./a.out
28%

Причем, результат в каждом компиляторе "свой", потому что тут это изначально UD.
> If the value of the integral part cannot be represented by the integer type, the behavior is undefined.

такие дела.

>>> Хахахахахаха, вот умора! Даже си компилятор при преобразовании из float в char выдает предупреждение
> Аналог твоего растоманского кода на си:

 #include <stdio.h>
int main(void) {
        char x = 1.04E+17;   <--- неявное преобразование

> И он выводит:
> <source>:3:18: warning: implicit conversion of out of range value from 'double' to
> 'char' is undefined [-Wliteral-conversion]
>>> Даже си компилятор при преобразовании из float в char выдает предупреждение

Кажется, до тебя начинает доходить :).
Теперь-то сможешь объяснить, зачем сравнивал попу-палец^W неявные преобразования в си с явными преобразованиями в ржавчине?

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

335. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (335), 21-Июл-20, 22:36 
Подъехал еще один иксперт. Объясни теперь ты разницу:

1. char x = (char)1.04E+17;
2. let x:u8 = 1.04E+17 as u8;

Скажи что эти два кода принципиально разные. Что си, что раст все сделали как сказал программист и скомпилили как надо. При неявном присвоении оба компилятора руганулись. О чем вы тут спорите?

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

336. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним84701 (ok), 21-Июл-20, 23:32 
> Подъехал еще один иксперт. Объясни теперь ты разницу:
> 1. char x = (char)1.04E+17;
> 2. let x:u8 = 1.04E+17 as u8;
> Скажи что эти два кода принципиально разные. Что си, что раст все делали как сказал программист и скомпилили как надо. При неявном присвоении оба компилятора руганулись. О чем вы тут спорите?

Ветку не читай, сразу требуй объяснений?

Дано:
>>> (новость) Устранена давняя недоработка при выполнении преобразований между целыми числами и числами с плавающей запятой.
>> (анон) Хахахахахаха, вот умора! Даже си компилятор при преобразовании из float в char выдает предупреждение

Теперь внимательно следи за руками:
char x = 1.04E+17;
> gcc 9  warning: overflow in conversion from 'double' to 'char' changes value

char x = (char)1.04E+17;   // первый пример
> компилится

let x:u8 = 1.04E+17;  //второй пример
rust 1.43.1 ("старая" версия)
  |           --   ^^^^^^^^ expected `u8`, found floating-point number

let x:u8 = 1.04E+17 as u8;
компилится.

Объясняю: " Хахахахахаха, вот умора!  Даже си комплятор при [неявном] преобразовании из float в char выдает предупреждение [а в ржавчине при явном не выдает]"


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

360. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (360), 26-Июл-20, 01:42 
>Даже си комплятор при [неявном] преобразовании из float в char выдает предупреждение [а в ржавчине при явном не выдает]

Ерунда какая-то. Выдавать предупреждение при неявном преобразовании полезно. При явном бесполезно, тебе ли не знать что делает сишка под капотом.

Вот тут переписывал код с сишки на шарп с преобразованиями uint8, long, unsigned long. Сишка все делала сама и молча, а тут шарп трахает мозг на каждый чих. Так что после шарпа, где все железно надо описывать, сишка уже не кажется такой уж "чистоплотной".

Как пример, unsigned long x = 0UL + LONG_MIN. Должен ли компилятор тут ругаться? Сишка не ругается, шарп ругается.

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

208. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (205), 21-Июл-20, 01:07 
классический руст. то, что в с++ неопределённое поведение, в русте просто где-то задокументировано, значит определённое поведение. открою страшную тайну (страшную для фанатиков руста), это не последнее переполнение которое там есть.
Ответить | Правка | К родителю #64 | Наверх | Cообщить модератору

324. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от inferrna (ok), 21-Июл-20, 19:34 
Неопределённое поведение, это не то, что ты, дурак, считаешь неопределённым, из-за недостаточной образованности. Это поведение, выдающее на разных системах/флагах сборки и т.д. различный результат.
>это не последнее переполнение которое там есть

ты бы с примерами приводил, а то чё как не ананимус

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

270. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Ordu (ok), 21-Июл-20, 13:23 
> Хахахахахаха, вот умора! Даже си компилятор при преобразовании из float в char выдает предупреждение, а "заточенный под безопасность" хваленый руст это пропускает что выливается в неопределённое поведение.

Дитятко, если ты хочешь глумиться над растом, не выглядя идиотом, то тебе следует ржать над тем, что все эти годы преобразование было UB, хоть раст и трубил во все трубы о том, что в расте UB -- нини. Само по себе это не делает C лучше, чем rust -- в C это тоже UB, но C, по-крайней мере, не претендует на отсутствие UB. В некотором смысле rust был лучше, потому как он запрещал неявные преобразования, то есть нельзя было сделать преобразование типа и не заметить этого. Но это слабое утешение.

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

329. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Forth (ok), 21-Июл-20, 19:50 
Утешение воистину слабое.
У меня такое вылезло неожиданно, тесты в релизе обвалились, хотя в дебаге все было ОК.
Приведение f32 в u16 всегда давало 0 в релизе и при этом правильный результат для i16.
Ответить | Правка | Наверх | Cообщить модератору

333. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 21-Июл-20, 20:57 
> Утешение воистину слабое.
> У меня такое вылезло неожиданно, тесты в релизе обвалились, хотя в дебаге
> все было ОК.
> Приведение f32 в u16 всегда давало 0 в релизе и при этом
> правильный результат для i16.

Угу. UB во всей его красе.

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

67. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от YetAnotherOnanym (ok), 20-Июл-20, 11:53 
> без использования (...) runtime
> компилятор Rust использует LLVM в качестве бэкенда

?

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

71. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (358), 20-Июл-20, 11:58 
очивидно что rust фанбои низнают используит ли их язык runtime или нет.
Ответить | Правка | Наверх | Cообщить модератору

92. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 12:26 
>> без использования (...) runtime
>> компилятор Rust использует LLVM в качестве бэкенда
> ?

http://lists.llvm.org/pipermail/llvm-dev/2011-December/04644...
>>  "The LLVM Project is a collection of modular and reusable compiler
>> and toolchain technologies. Despite its name, LLVM has little to do
>> with traditional virtual machines, ..."
> "LLVM" is officially no longer an acronym.  The acronym it once expanded too was confusing,

?_o

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

165. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (165), 20-Июл-20, 17:24 
И? Это как написать: "ANSI C использует gcc в качестве бекенда".
Ответить | Правка | К родителю #67 | Наверх | Cообщить модератору

271. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Ordu (ok), 21-Июл-20, 13:24 
>> без использования (...) runtime
>> компилятор Rust использует LLVM в качестве бэкенда

Что именно тебя здесь смущает? Раскрой свой вопрос и задай его, а не просто натягивай вопросительную гримасу на рожу.

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

325. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от YetAnotherOnanym (ok), 21-Июл-20, 19:39 
> Что именно тебя здесь смущает? Раскрой свой вопрос и задай его, а
> не просто натягивай вопросительную гримасу на рожу.

Долго объяснять. Не понял - проходи мимо.

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

330. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 21-Июл-20, 20:29 
>> Что именно тебя здесь смущает? Раскрой свой вопрос и задай его, а
>> не просто натягивай вопросительную гримасу на рожу.
> Долго объяснять. Не понял - проходи мимо.

Ну ладно, не объясняй.

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

75. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (75), 20-Июл-20, 12:02 
статью писал кто-то с вертикально плоскими мозгами.
Ну (скрыто цензурой) (скрыто цензурой) (скрыто цензурой), (скрыто цензурой) (скрыто цензурой)!
Какого (скрыто цензурой) не пойму я!
Читать ведь не удобно от слова СОВСЕМ.
У автора что, кроме мобилы ничего больше нет в мыслях, а дисплэя компьютера он(а,о) никогда не видел(а,о)? Что за (скрыто цензурой)!
Ответить | Правка | Наверх | Cообщить модератору

82. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (82), 20-Июл-20, 12:11 
@-moz-document domain("micouy.github.io") {
body {
    width: 100%;
    line-height: 1.4;
    font-size: 2rem;
    padding: 0 0.25rem;
}
main#content p {
    margin: 1rem 0;
    text-align: justify;
}
main#content pre,
main#content img {
    width: 100%;
    padding: 1rem;
    font-size: 1.75rem;
}

}

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

86. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (86), 20-Июл-20, 12:15 
    margin-left: unset;
в последнем блоке видимо забыл, возмущённый ты наш :)
Ответить | Правка | Наверх | Cообщить модератору

90. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Урри (?), 20-Июл-20, 12:22 
Расслабься, статью писал совсем неопытный человек, который открыл для себя ассемблер и то, что компьютеру не обязательно нужна ОС чтобы работать. Поэтому и статья такая.

А вообще большой жирный плюс. У меня от ностальгии аж сердце защемило.

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

107. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (114), 20-Июл-20, 13:06 
>Опубликован ... системного программирования Rust

Раст теперь так позиционируют?

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

118. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от leap42 (ok), 20-Июл-20, 13:45 
> Раст теперь так позиционируют?

ну адекватные люди его всегда так позиционировали. у меня в книжке по Rust (та, которая цветная, с крабом на обложке) точно так и написано (другой вопрос что они довольно широко это понятие трактуют, но не суть)

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

119. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (99), 20-Июл-20, 13:53 
На расте можно запрограммировать любую систему где есть шланг и крейт
Ответить | Правка | К родителю #107 | Наверх | Cообщить модератору

136. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (136), 20-Июл-20, 15:05 
>шланг и крейт

Истинно системному языку не нужен рантайм. Значит Раст не достаточно "системен".

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

140. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 15:19 
>>шланг и крейт
> Истинно системному языку не нужен рантайм. Значит Раст не достаточно "системен".

Суровые челяб^W опеннетные анонимы не используют компиляторы, считая их "не достаточно системным рантаймом"? o_O


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

150. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 20-Июл-20, 16:44 
А раста нет рантайма, и на нем можно сделать ОС. См. Redox
Ответить | Правка | К родителю #136 | Наверх | Cообщить модератору

174. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 20-Июл-20, 18:56 
Можно и на всяких жавах. Было такое когда-то. И что?

Ты ставил этот Redox? Я ставил. Спасибо но сырое присырое.

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

185. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (3), 20-Июл-20, 21:27 
> Можно и на всяких жавах. Было такое когда-то. И что?

Не, ну на жаве это на перепиленной, а тут язык изначально поддерживает режим zero runtime

> Ты ставил этот Redox? Я ставил. Спасибо но сырое присырое.

А это уже другой вопрос, насколько он готов

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

233. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Ретроград (?), 21-Июл-20, 08:33 
В расте нет режима "zero runtime". Там хочешь-не хочешь, но нужно подключать core, который задействуется в каждом втором примитиве языка. Ну либо писать на расте как на урезанном C, в котором половина синтаксических конструкций работать не будет, но нафиг он тогда такой нужен.

Проблема раста как раз в том, что неадекваты почему-то позиционируют его как язык системного программирования. Хотя даже простого взгляда на то, откуда он появился и для чего пилится, достаточно, чтобы понять, что это за язык на самом деле. Это абсолютно прикладной ЯП, типа Java и C#. Delphi 21 века, если угодно.

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

255. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 12:07 
>Ну либо писать на расте как на урезанном C

ты так расхваливаешь зерокостность С, а где она ?
libc -  половина на асме.
linux - та часть где эта зерокостность надо - ассеблер.

Так что эт, бревно из глазика своего выйми, а потом будешь про зерокостность рассказывать.

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

279. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Совершенно другой аноним (?), 21-Июл-20, 14:42 
>>Ну либо писать на расте как на урезанном C
> ты так расхваливаешь зерокостность С, а где она ?
> libc -  половина на асме.

https://github.com/lattera/glibc

C - 65.8%, Assembly - 14.2%, C++ - 9.4%, Objective-C - 4.4%, Roff - 3.4%, Makefile - 0.8%, Other -
2.0%

На ассеблере там то, что должно работать очень быстро. И как-бы требовать от C "zerocost abstraction", при практически отсутствии этих самых "abstraction", как-то странно. Скорее всего речь не про "zerocost abstraction", а про runtime, которого по стандарту, особо и нет. В gcc, кстати, такой runtime - есть, этот то, который живёт в libgcc, разные там умножения 64-х разрядные для 32-х битных платформ и т.д. И при этом нет memcpy()/memset() - т.к. это библиотека. Как я понимаю Rust в этом плане требует на порядок больше.

> linux - та часть где эта зерокостность надо - ассеблер.

в linux на ассемблере тоже либо то, что должно работать быстро, либо то, что не выразимо на самом языке - типа чтения разных специфичных регистров. Остальное всё на C.

https://github.com/torvalds/linux

C - 96.6%, C++ - 1.3%, Assembly - 1.1%, Objective-C - 0.3%, Shell - 0.3%, Makefile - 0.2%, Other - 0.2%

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

284. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 15:16 
> Как я понимаю Rust в этом плане требует на порядок больше.

А вот как раз и нет. Раст ,как и С, может ужиматься очень сильно, в этом плане он ничем не уступает С.
Да, понятно, если писать для МК то нельзя пользоваться всем чем хочеться из std, но то же самое касается и С.

Все что я хочу сказать, что раст не менее зерокостный чем С. Единственное что у С есть  - это его легаси (но его дохрена).

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

290. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Совершенно другой аноним (?), 21-Июл-20, 15:41 
>> Как я понимаю Rust в этом плане требует на порядок больше.
> А вот как раз и нет. Раст ,как и С, может ужиматься
> очень сильно, в этом плане он ничем не уступает С.
> Да, понятно, если писать для МК то нельзя пользоваться всем чем хочеться
> из std, но то же самое касается и С.

У C по стандарту есть:

6 The two forms of conforming implementation are hosted and freestanding. ...
A conforming freestanding implementation shall accept any strictly conforming program in which the ∗ use of the features specified in the library clause (clause 7) is confined to the contents of the standard headers <float.h>, <iso646.h>, <limits.h>, <stdalign.h>, <stdarg.h>, <stdbool.h>, <stddef.h>, <stdint.h>, and <stdnoreturn.h>.

Так вот, freestanding - это, типа, для написания ОС и т.д. Как Вы можете видеть, там вообще ничего не требуется - т.е. ни одной функции - только константы типа лимитов. Самим языковым средствам вообще ничего не надо от runtime-а. Как я уже писал выше - для gcc, на самом деле это не совсем так, есть минимальный набор функций, который необходим, если Вы начинаете работать с операциями разрядностью >32 на 32-х битных платформах.

> Все что я хочу сказать, что раст не менее зерокостный чем С.

Будут-ли при этом доступны все языковые средства? Я не про библиотеку, а про сам язык.

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

299. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 16:15 
>Будут-ли при этом доступны все языковые средства? Я не про библиотеку, а про сам язык.

конечно будут.

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

315. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Совершенно другой аноним (?), 21-Июл-20, 17:33 
>>Будут-ли при этом доступны все языковые средства? Я не про библиотеку, а про сам язык.
> конечно будут.

Правильно я понимаю, что необходимы следующие "символы" (согласно https://doc.rust-lang.org/core/):
memcpy, memcmp, memset, rust_begin_panic и rust_eh_personality?

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

369. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от freecoderemail (?), 07-Авг-20, 10:36 

#[lang = "eh_personality"]
#[no_mangle]
pub extern fn rust_eh_personality() {
}

#[lang = "panic_impl"]
#[no_mangle]
pub extern fn rust_begin_panic(info: &PanicInfo) -> ! {
    unsafe { intrinsics::abort() }
}

memcpy, memcmp, memset можно написать самому. Уже обсуждали тут: https://www.opennet.ru/openforum/vsluhforumID3/121437.html#5

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

363. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 30-Июл-20, 18:14 
> У C по стандарту есть:

Не забудь еще про freestanding прочитать, умник.

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

364. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Совершенно другой аноним (?), 31-Июл-20, 10:45 
>> У C по стандарту есть:
> Не забудь еще про freestanding прочитать, умник.

Если я в чём-то где то не прав - подскажите пожалуйста. В данном контексте мне, к сожалению, не понятна суть Вашего замечания. Из стандарта, всё, что касается freestanding environment:

4. Conformance

...

6 The two forms of conforming implementation are hosted and freestanding. ...
A conforming freestanding implementation shall accept any strictly conforming program in which the use of the features specified in the library clause (clause 7) is confined to the contents of the standard headers <float.h>, <iso646.h>, <limits.h>, <stdalign.h>, <stdarg.h>, <stdbool.h>, <stddef.h>, <stdint.h>, and <stdnoreturn.h>. A conforming implementation may have extensions (including additional library functions), provided they do not alter the behavior of any strictly conforming program.4)

4) This implies that a conforming implementation reserves no identifiers other than those explicitly reserved in this International Standard.

5.1.2 Execution environments
1 Two execution environments are defined: freestanding and hosted. In both cases,
program startup occurs when a designated C function is called by the execution
environment. All objects with static storage duration shall be initialized (set to their
initial values) before program startup. The manner and timing of such initialization are
otherwise unspecified. Program termination returns control to the execution
environment

5.1.2.1 Freestanding environment
1 In a freestanding environment (in which C program execution may take place without any
benefit of an operating system), the name and type of the function called at program
startup are implementation-defined. Any library facilities available to a freestanding
program, other than the minimal set required by clause 4, are implementation-defined.
2 The effect of program termination in a freestanding environment is implementationdefined.

5.1.2.4 Multi-threaded executions and data races
1 ... Under a freestanding implementation, it is implementation-defined whether a program can have more than one thread of execution.

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

192. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от анонимуслинус (?), 20-Июл-20, 22:21 
вот тут соглашусь пиши ассемблерным кодом))) и будет всем счастья. тогда нынешние системы у каждого будут выдавать хрелион процентов мощности при затратах 0,001% общих мощностей. и окажется что даже пень 4 это жесткий сервак)) а так да языки с защитой памяти удобны, но так же все дальше от системных применений. хотя и проще.
Ответить | Правка | К родителю #136 | Наверх | Cообщить модератору

292. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 21-Июл-20, 15:54 
Мне будеь счастье тогда и только тогда, когда ты перестанешь хамить. Умей проигрывать.
Ответить | Правка | Наверх | Cообщить модератору

124. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (124), 20-Июл-20, 14:07 
Как можно назвать язык "ржавчиной" и надеяться, что у него будет хоть какое-то будущее?
Ответить | Правка | Наверх | Cообщить модератору

130. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от DEV (?), 20-Июл-20, 14:31 
о да, название конечно единственое на что нужно обращать внимание. Таким подходом успешным должен быть язык с наванием "НевероятноБыстрыйИКорректныйD++", но как-то не видно такого языка
Ответить | Правка | Наверх | Cообщить модератору

194. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от анонимуслинус (?), 20-Июл-20, 22:22 
там как раз светился D2. но неизвестно что с ним стало)))
Ответить | Правка | Наверх | Cообщить модератору

198. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (198), 20-Июл-20, 22:33 
Такое название говорит о том, что сами разработчики к этой разработке относились с пренебрежением. По крайней мере, по началу. Что само по себе минус. Как корабль назовешь, так он и поплывет. В этой шутке есть доля правды.
Ответить | Правка | К родителю #130 | Наверх | Cообщить модератору

160. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Онаним (?), 20-Июл-20, 17:08 
Есть ещё вторая возможная трактовка (сленг): "рухлядь" :)
Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

236. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alexrayneemail (?), 21-Июл-20, 09:27 
вот "С" - это концептуально. а с крестом - это навечно, но чтобы уж наверняка - поставили два креста.

"D" - виглядел мощно, но чтото пошло не так?

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

339. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 22-Июл-20, 00:01 
> Как можно назвать язык "ржавчиной" и надеяться, что у него будет хоть какое-то будущее?

Чтобы получить ответ на этот вопрос, достаточно понаблюдать за растом лет десять. Не совсем, впрочем: ты увидишь, как у раста появится будущее, несмотря на имя языка. Но оттуда до ответа на твой вопрос останется совсем чуть-чуть: надо будет понять, как люди могут предвидеть такое развитие событий за 15 лет до того, как оно свершится.

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

342. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 22-Июл-20, 00:40 
Так же, как можно назвать систему контроля версий git
Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

135. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от n00by (ok), 20-Июл-20, 14:57 
> Также добавлены новые флаги:
> "force-unwind-tables" для генерации "раскрученных"
> (unwind) таблиц вызовов, независимо от стратегии обработки краха;

В С++ так называемые unwind-tables используются диспетчером исключений для раскрутки стека вызовов: когда текущая функция не может обработать исключение, для поиска соответствующего блока catch перебираются "снизу вверх" функции, её вызвавшие.

Очевидно, перевод не вполне корректен.

Знаю, что можно предположить исправление, но не знаю Rust и тамошние стратегии обработки исключений. Подожду, пока исправление предложат специалисты по языку, вдоволь напобеждавшись в Holy War.

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

141. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (138), 20-Июл-20, 15:24 
Рассказ о создании приложения замечателен. Даже блин запись в видеопамять без unsafe не получилась, а ведь это всего лишь массив из 4000 байт по определенному адресу. Где хваленая безопасность ?
Ответить | Правка | Наверх | Cообщить модератору

151. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (3), 20-Июл-20, 16:45 
А по вашему запись в видеопамять это safe?
Ответить | Правка | Наверх | Cообщить модератору

161. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (138), 20-Июл-20, 17:12 
Что же такого небезопасного в массиве известного размера ? Или хваленый хруст не может обеспечить безопасности столь тривиального случая ?
Ответить | Правка | Наверх | Cообщить модератору

166. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним84701 (ok), 20-Июл-20, 17:27 
> Что же такого небезопасного в массиве известного размера ? Или хваленый хруст
> не может обеспечить безопасности столь тривиального случая ?


const VGA_MEMORY: *mut u16 = 0xb8000 as *mut u16;
...
*(VGA_MEMORY.offset(self.cursor as isize)) = cell.into();

И правда -- что же такого небезопасного может быть в записи по фиксированному адресу "именно тут, а не например в 0xA0000 или 0xb0000, точно-точно память видяхи и туда точно-точно влезет запись, мамой клянусь!"?
Хм, а попробуйте-ка подставить 0x7C00 и расскажите нам еще немного о "безопасности" и "тривиальности" 🙄
Ответить | Правка | Наверх | Cообщить модератору

196. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (196), 20-Июл-20, 22:29 
Все таки хотелось бы услышать начальника транспортного цеха.

Так все пресвятой руст и должен помочь с тем чтобы программы не лезли с своими байтами куда не надо. Или нет ?

Еще раз чем видеопамять отличается от любого другого массива байтов? Только тем что находится по адресу b800 ?

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

202. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним84701 (ok), 21-Июл-20, 00:20 
> Все таки хотелось бы услышать начальника транспортного цеха.
> Так все пресвятой руст и должен помочь с тем чтобы программы не лезли с своими байтами куда не надо. Или нет ?

Ознакомся с матчастью и прекрати уже эту глупую истерику^W полемику с ложным выбором.
Смысл unsafe - изоляция опасных кусков кода, где компилятор в силу отсутствия либастрала не может сделать полноценный статический анализ и дать те же гарантии, что и для safe кусков кода.

> Еще раз чем видеопамять отличается от любого другого массива байтов? Только тем что находится по адресу b800 ?

Ознакомся с матчастью, книжку там почитай или еще что. Узнай например, что адрес зависит от видео-режима
http://www.ctyme.com/intr/rb-0069.htm#Table10
Расскажи подробнее, с какой именно версией либастрала анализатор во время компиляции cможет угадать video mode (и успешное завершение инициализации) и что именно туда и именно столько байтов можно записать?

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

272. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (138), 21-Июл-20, 13:26 
В данном случай режим явно и недвусмысленно цветной 80x25 (2 байта на символ) т.е. видеопамять является массивом из 4000 байт (или из 2000 пар байт+атрибут для эстетов).

Получается в пресвятом хрусте нет возможности средствами языка справиться со столь простой ситуацией ?

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

277. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 21-Июл-20, 14:01 
> Получается в пресвятом хрусте нет возможности средствами языка справиться со столь простой ситуацией ?

Почему же? Там выше написано как средствами языка можно справится с такой ситуацией. Или ты о том, что тупой-тупой rust не может понять, что 0xb800 это адрес видеобуфера текстового режима, и туда можно писать всегда, и что это не приведёт ни к каким косякам? Ты считаешь, что в rust надо было включить базу данных всего железа, и чудесные возможности понимать за программиста всё, знание всех архитектур, всех портов ввода-вывода, всех особых областей адресного пространства, которые мапятся на что-нибудь неочевидное -- типа файлов регистров, видеопамяти, и тп? То есть ты тут пытаешься глумитсья над тем, что rust не умеет писать программы за программиста?

Это задача программиста описать архитектуру и объяснить компилятору rust'а, какие операции безопасны. И если запись в 0xb800 безопасна, в том числе и конкуретная, то вполне можно сделать объект содержащий в себе 0xb800, который будет позволять владение собой многим потокам параллельно, и позволять писать в эту память параллельно многим потокам. Но если ты будешь это делать, то это будет твоё решение, а не решение компилятора. Компилятор не будет думать за тебя.

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

282. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним84701 (ok), 21-Июл-20, 14:59 
> В данном случай режим явно и недвусмысленно цветной 80x25 (2 байта на
> символ) т.е. видеопамять является массивом из 4000 байт (или из 2000 пар байт+атрибут для эстетов).

В данном случае режим явно и недвусмысленно указывается и инициализируется где-где?
Или опять гарантии исключительно вида "аноним зуб дает" (чужой) и "аноним точно-точно знает!"?

>  т.е. видеопамять является массивом из 4000 байт

Вообще-то, для вашего "явно и недвусмысленно цветного" режима -- в 8 раз (и еще чуть-чуть) больше. 32KB.
Такой вот "тривиальнейший случай" 🙄

> Получается в пресвятом хрусте нет возможности средствами языка справиться со столь простой  ситуацией ?

Успокойтесь, судя по шедевральным
> чем видеопамять отличается от любого другого массива байтов
> тривиального случая
> простой  ситуацией

анонимам это все знакомо ислючительно в теоретических размышлизмах и на практике никогда не понадобится 🙄

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

298. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Совершенно другой аноним (?), 21-Июл-20, 16:12 
>> В данном случай режим явно и недвусмысленно цветной 80x25 (2 байта на
>> символ) т.е. видеопамять является массивом из 4000 байт (или из 2000 пар байт+атрибут для эстетов).
> В данном случае режим явно и недвусмысленно указывается и инициализируется где-где?
> Или опять гарантии исключительно вида "аноним зуб дает" (чужой) и "аноним точно-точно
> знает!"?
>>  т.е. видеопамять является массивом из 4000 байт
> Вообще-то, для вашего "явно и недвусмысленно цветного" режима -- в 8 раз
> (и еще чуть-чуть) больше. 32KB.
> Такой вот "тривиальнейший случай" 🙄

Вы немного ошиблись, имхо, уважаемый аноним имел в виду текстовый экран 80x25 (на это, имхо, намекает базовый адрес 0xb800) под который действительно требуется 4К - один байт под изображение символа, а второй, если не путаю, под атрибуты - цвет символа, фона, разные там мерцания.

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

327. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним84701 (ok), 21-Июл-20, 19:45 
> Вы немного ошиблись, имхо, уважаемый аноним имел в виду текстовый экран 80x25
> (на это, имхо, намекает базовый адрес 0xb800) под который действительно требуется
> 4К - один байт под изображение символа, а второй, если не
> путаю, под атрибуты - цвет символа, фона, разные там мерцания.

*вздыхая -- я ведь не зря ссылочку с табличкой запостил*
"стандартный-привычный" видеорежим 80x25 предоставляет 8 страниц.
8 * 4096 = 32КБ.
и вполне можно выводить текст на экран, записывая по адресу 0xbf000+


BASE equ 0x7c00

org BASE
use16

jmp 0:start
start:
cli         
cld         
xor ax,ax
mov ds,ax
sti

;set video mode=80x25, 16 colors, page 7
mov ax,3  
int 10h
mov ax, 507h   ;7 page
int 10h

mov ah, 0x02   ;black / green
mov si, message
push 0xb800
pop es
mov di, 4096 * 7 ; write bytes to 0xb800*16 + 4096 * 7 = 0xbf000

.print:
  lodsb
  stosw
  test al,al
  jnz .print
@@:
hlt
jmp @b

message db "Some 1337-73><7",0
      
db BASE+510-$ dup(0)
signature:
dw 0aa55h

; uncomment to create a bootable floppy image
; db $$+1440*1024-$ dup(0)

собирается простым "fasm boot.asm", загружается тем же "qemu-system-i386 boot.bin"
Любители виртуальных ящиков могут раскомментировать последнюю строку -- сгенерируется "валидный" флоппи-образ  (для VBox должно быть достаточно переименовать в *.img).

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

340. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним84701 (ok), 22-Июл-20, 00:22 
 
> push 0xb800
> pop es

А инициализацию стека (SS/SP) то я из примера и вырезал :-/
Хотя для qemu и ящика "и так сойдет" .

Более корректная версия, с более явной адресацией 0xbf000


BASE equ 0x7c00

org BASE
use16

jmp 0:start

start:
cli         
cld         
xor ax,ax
mov ds,ax
sti

;set video mode=80x25, 16 colors, page 7
mov ax,3  
int 10h
mov ax, 507h   ;7 page
int 10h

mov ax, 0xbf00
mov es, ax
mov ah, 0x02   ;green on black

mov si, message
xor di,di
mov cx, msg_len
.print:
  lodsb
  stosw
  loop .print
@@:
hlt
jmp @b

message db "Some 1337-73><7"
msg_len = $-message      

db BASE+510-$ dup(0)
signature:
dw 0aa55h

; uncomment to create a bootable floppy image
; db $$+1440*1024-$ dup(0)


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

351. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Совершенно другой аноним (?), 22-Июл-20, 14:00 
Сорри, прочитал не внимательно. Как-то привык, что все используют первую страничку, тем-более, что из защищённого режима (для которого можно писать на Rust-е) дёргать прерывания BIOS-а не очень простая затея, насколько я помню. Кстати, в Rust-е есть поддержка генерации под 16-битный реальный режим? Насколько я знаю, в компиляторах C она осталась только в древних компиляторах, 80-тых - 90-тых годов, в современных, где вообще не никогда поддерживалась, а где и просто выкинули.
Ответить | Правка | Наверх | Cообщить модератору

275. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Ordu (ok), 21-Июл-20, 13:56 
Знаешь, твоё непонимание небезопасности этого массива говорит не столько о том, что раст какой-то не такой, сколько о том, что из тебя совершенно никакой системный программист.

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

Как это делать? Надо настроить регистры VGA на копирование, может быть нужные операции над битами вставить, и после этого ты запускаешь цикл где копируешь строками. На уровне асма это сводится к чему-то типа movsb, где, например, каждый копируемый бит соответствует одному пикселю на экране. Тут очень важно, чтобы за чтением байта из видеопамяти следовала бы его запись туда. Если между этим чтением и записью байта вмешается, скажем, ещё какое-то чтение из другого места, то будет записано 8 левых пикселей.

А теперь прикинь, что в процессе выполнения этого цикла случилось прерывание, и какой-то совершенно другой код начал выполнять какие-то операции с видеокартой -- перенастроил режимы/регистры, и начал что-то там творить. Что будет? Будет мусор на экране.

Чтобы такого не случалось, люди выкручиваются как могут. В DOS'е было довольно просто с этим, были простые правила:
1. не выводить ничего из обработчиков прерываний
2. однопоточная программа, никакой многозадачности, лучше в том числе и кооперативной.

Но если мы прикинем вариант, что с VGA карточкой работает современная операционная система, то тут встаёт куча проблем с синхронизацией. Например надо X11 одеть поверх видеокарты, чтобы приложения бы общались с X11, заказывая выполнение операций, а X11 бы уже упорядочивал бы их и выполнял бы "атомарно".

Если ты заглянешь в ядро, там тоже далеко не любому коду позволяется работать с видеопамятью. Видеопамятью заправляет драйвер видеокарты, он выставляет наружу API, который может не все косяки запрещает клиентскому коду, но часть их он запрещает.

В ядре делается именно то, к чему тебя будет подталкивать rust, разница лишь в том, что в ядре тебя к правильному стилю будут подталкивать ревьюеры кода, здесь же всё начнётся раньше: тебя будет к этому подталкивать rustc.

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

317. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (77), 21-Июл-20, 18:22 
>Еще раз чем видеопамять отличается от любого другого массива байтов? Только тем что находится по адресу b800 ?

Ты что, не байтолюб, анонимус? Видеопамять от буфера отличить не можешь? ТУРИСТ!

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

186. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 20-Июл-20, 21:29 
> Что же такого небезопасного в массиве известного размера ? Или хваленый хруст
> не может обеспечить безопасности столь тривиального случая ?

Ну так массив-то с аппаратурой связан, может там не находится да и вообще. Раст наоборот предупреждает, что тут может быть unsafe

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

197. "Выпуск языка программирования Rust 1.45"  –4 +/
Сообщение от Аноним (196), 20-Июл-20, 22:31 
Так и написал бы что не знаешь.
Ответить | Правка | Наверх | Cообщить модератору

247. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (247), 21-Июл-20, 10:58 
"хваленый хруст" не может гарантировать безопасность доступа к памяти по произвольному адресу. И совсем несложно понять почему
Ответить | Правка | К родителю #161 | Наверх | Cообщить модератору

146. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от ann (??), 20-Июл-20, 16:12 
Всё пилют и пилют этот язык, а на языке всё не пилят и не пилят. Ни инфраструктуры ни IDE.
Ответить | Правка | Наверх | Cообщить модератору

148. "Выпуск языка программирования Rust 1.45"  +3 +/
Сообщение от Аноним (148), 20-Июл-20, 16:36 
>Всё пилют и пилют этот язык, а на языке всё не пилят и не пилят. Ни инфраструктуры ни IDE.

Да его больше пиарят, чем пилят. Эту новшество во все щели пихают, не останавливаясь не перед чем, и стараясь полить говном все остальные языки. Уже в ядро Linux пытаются подсунуть, лишь бы обратить на него внимание. Эти дебильноватые маркетологи похоже просто не понимают,что таким образом внушает отвращение к этому, и без того муторному, языку.

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

250. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от анон (?), 21-Июл-20, 11:12 
>внушает отвращение к этому

Я меня это началось еще 4 года назад, когда я попытался ознакомиться с ним. Самая идея про безопасную динамическую память мне понравилась. В итоге , идея оказалась так себе, реализация тоже не очень, а комьюнити очень токсичным, и судя по ответам, очень молодым. Бесполезно было искать ответы, сравнивая с и раст на разных задачах. Там, где объектник занимал 1-2кб, раст выдавал мне 40, и всем было норм, ведь коммондорский код очень опасен.

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

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

163. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от ann (??), 20-Июл-20, 17:16 
Что они запилили? Кусочек в фаерфоксе? Васянское недоделаное поделье неюзабельного состояния? Полноценного софта как не было так и нет.

Где это всё? Безопастный почтовый клиент на святом безопастном расте? Где этот браузер на чистом расте супербезопасный? Где это IDE для rust

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

169. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (15), 20-Июл-20, 17:49 
Там это, http трёх на русте вроде.  Есть ещё разные веб-фреймворки, показывающие неплохие результаты. Энкодер для ав1 пилят потихоньку. Этого мало или норм для хипстоподелки? Достаточно полноценно? Сейчас он претендует в основном на ту же область, что и го с жс (а го претендует занять место питона в вебе). Ещё вроде какая-то игрушка с вокселями несколько лет назад была, но понятно, что для игрушек такой язык не очень подходит -- всё ценное всё рано будет в unsafe, а всё что не в unsafe, будет тормозить. Жава с додиезом, впрочем, подходят ещё меньше, а погляди-ка. Сложные масштабные проекты вроде перечисленных тобой без массивных вливаний ресурсов (в том числе денежных) сами собой не появляются. Пока с рустом бизнес только экспериментирует, и вроде он вполне доволен результатами.
Ответить | Правка | Наверх | Cообщить модератору

172. "Выпуск языка программирования Rust 1.45"  +5 +/
Сообщение от ann (??), 20-Июл-20, 18:50 
Сори, нечаянно не туда ответил.


Я же и говорю, кусочек лисы написали. Ну два кусочка. Вообще фиалетово. Энкодер пользовать тоже в отрезе от проигрывателя смысла нет. Нормальные люди видео на телевизорах \ консолях смотрят а не в браузере. Я говорил именно о полезнов в поседневной жизни\работе софте. Почта (не вебморда а полноценный клиент), браузер, какое-то ide, текстовые редакторы, видео\аудио звонки, удалённый доступ, виртуализация (не докеры). Графические редакторы. Да теже аудио\видео плееры (а не один несчастный энкодер).
Веб фрейморки туда-же, ну такое. Если уж и претендует на область го (т.е. веб) так пусть так и позицианируется, а не как системный язык уровня с\с++.

https://github.com/rust-unofficial/awesome-rust - смотрим сюда и видим что толком то ничего и нет, что пригодилось бы в повседневной жизни\работе. Так, +- две поделки.

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

Я например хочу писать код и получать от этого удовольствие а не заниматься мазахизмом. Удовольствие это когда одной командой поставил себе IDE и у тебя из коробки есть всё. Контекстный рефакторинг, контекстный поиск, отладка, профайлинг, справка по языку, поддержка ситем контроля версий. И это из коробки, а не идиотизм с плагинами от васянов.

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

176. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (15), 20-Июл-20, 20:08 
Все программы (значительное число), используемые сегодня, были написаны 20-30 лет назад, а то и раньше. И многие из них до сих пор недостаточно развиты и забагованы (опенсорс, мдя). Руст интересен, поскольку даёт какую-никакую защиту от программиста, но при этом является достаточно низкоуровневым языком без навязанного сборщика мусора. И пытается интегрировать все популярные современные подходы к программированию (чтобы среднему программисту было удобно и привычно), предоставив определённые преимущества.

Я бы рассматривал его как интересный эксперимент, который повлияет на будущие языки программирования, но не "убийцу си" или что-нибудь подобное. Стоит ли его использовать в реальных проектах? Ну, скажем, д скорее всего не стоит, хоть он и поддерживается гцц, а вот руст… Если ты разработчик под проприетарные системы, то скорее всего ты уже безвылазно подсел на шланг, а там и до руста не далеко.

Руст это не тот случай, где сегодня мы пишем на джаве, а завтра без значительных проблем и расхождений в идеологии переписываем с джавы на плюсы (или прогоняем в substratevm, ха), поэтому не имея гарантий и надёжной инфраструктуры при отсутствии явного превосходства, деньги вбрасывать не спешат, как мне кажется. Если продолжат вылизывать на предмет багов и искоренения таких вот проблем, то, рано или поздно, начнут писать и что-нибудь из прикладного софта (но как такового смысла писать прикладной софт на русте не много, можно всё то же самое написать на других языках с кучей вылизанных батареек и ничем себя не ограничивать в процессе).

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

177. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (-), 20-Июл-20, 20:11 
IDE и ООП не нужно.
Ответить | Правка | К родителю #146 | Наверх | Cообщить модератору

182. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от ann (??), 20-Июл-20, 20:42 
Да пожалуйста, пиши свои хелоуврлды в блокноте, кто-же тебе мешает то.
Ответить | Правка | Наверх | Cообщить модератору

183. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 20-Июл-20, 20:53 
Неосилятор? :)
Ответить | Правка | К родителю #177 | Наверх | Cообщить модератору

245. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Sarcastic scutosaurus (?), 21-Июл-20, 10:44 
Ты попутал. Неостиляторы — это те, кто без IDE и строчки кода написать не могут, а если даже и напишут — всё равно не знают, как его скомпилировать.
Ответить | Правка | Наверх | Cообщить модератору

293. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 15:56 
Ага, рассказал человек не осиливший как опакетить прогу и делающий флатошлаки.

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

Но если у тебя проект 5 - 10 файлов, да, оно нафик не упало.

И IDE не собирает проект при правильом подходе, да будет тебе известно, проект собирают сборочные системы. Под кучу систем и дестрибутивов без всяких проблем. И флатошлаки вообще не нужна.

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

170. "Выпуск языка программирования Rust 1.45"  +7 +/
Сообщение от Аноним (170), 20-Июл-20, 18:02 
Захожу в тему про Раст:
Вижу Си обсуждают.
Скоротечна жизнь.
Ответить | Правка | Наверх | Cообщить модератору

171. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 20-Июл-20, 18:07 
Я же и говорю, кусочек лисы написали. Ну два кусочка. Вообще фиалетово. Энкодер пользовать тоже в отрезе от проигрывателя смысла нет. Нормальные люди видео на телевизорах \ консолях смотрят а не в браузере. Я говорил именно о полезнов в поседневной жизни\работе софте. Почта (не вебморда а полноценный клиент), браузер, какое-то ide, текстовые редакторы, видео\аудио звонки, удалённый доступ, виртуализация (не докеры). Графические редакторы. Да теже аудио\видео плееры (а не один несчастный энкодер).

Веб фрейморки туда-же, ну такое. Если уж и претендует на область го (т.е. веб) так пусть так и позицианируется, а не как системный язык уровня с\с++.

https://github.com/rust-unofficial/awesome-rust - смотрим сюда и видим что толком то ничего и нет, что пригодилось бы в повседневной жизни\работе. Так, +- две поделки.

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

Я например хочу писать код и получать от этого удовольствие а не заниматься мазахизмом. Удовольствие это когда одной командой поставил себе IDE и у тебя из коробки есть всё. Контекстный рефакторинг, контекстный поиск, отладка, профайлинг, справка по языку, поддержка ситем контроля версий. И это из коробки, а не идиотизм с плагинами от васянов.

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

178. "Выпуск языка программирования Rust 1.45"  –3 +/
Сообщение от Аноним (-), 20-Июл-20, 20:13 
Признайся ты же нормальный нытик и неосилятор, может тебе и зад подтереть надо?
Ответить | Правка | Наверх | Cообщить модератору

180. Скрыто модератором  –1 +/
Сообщение от ann (??), 20-Июл-20, 20:37 
Ответить | Правка | Наверх | Cообщить модератору

179. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (179), 20-Июл-20, 20:17 
Реально, под постами про Rust толпы говно*дов, которые сидят в своем болоте и не хотят изучать ничего нового.
Изучите хотя бы основы и поймите, почему язык один из самых любимых для многих программистов - с обычными языками так не бывает.
И я вам говорю, что Rust сильно повлиял на меня в лучшую сторону.
Ответить | Правка | Наверх | Cообщить модератору

181. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от ann (??), 20-Июл-20, 20:39 
Я достаточно попробовал rust и в vim и в emacs чтобы понять что преимущества он не даёт. Точно так-же спотыкается точно в тех-же местах в которых спотыкается современный C++ (я говорю именно о плюсах) при этом обладает гораздо худшей инфраструктурой.
Ответить | Правка | Наверх | Cообщить модератору

190. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (179), 20-Июл-20, 21:49 
Ну как ты можешь понять все кейсы, когда толком с ним не работал?
Алиасинг C++ отлавливает?
А как подключить third-party зависимость без танцев с бубном?
А здесь я делаю cargo add {package-name} и получаю все что мне нужно
Ответить | Правка | Наверх | Cообщить модератору

193. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от ann (??), 20-Июл-20, 22:22 
Я не говорил что знаю все кейсы, я попробовал переписать интереса ради несколько своих библиотек, не одну здравствуй миру а вполне среднего размера проекты. Получилось? Да, получилось. Но я не увидел преимуществ. Да, не падало на ровных местах, но у меня и полюсовый код не падал.

Потом ради интереса попробовал занятся рефакторингом, что является нормальной частью любого проикта больше года жизни которому. И тут я увидел что поддержка rust в vim и emacs примерно на уровне подсветки синтаксиса и всё.

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

pkg install library_name

#include <blablabla>

Нашел проблему а карго который без привязки к ОС тащит всякий мусор - нет, спасибо, не надо. Вычищай потом этот хлам как в том-же питоновоском pip, или чей он там.

На продакшен тащить пакеты от васянов - вообще бы руки отбивал.

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

249. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (179), 21-Июл-20, 11:10 
>> На продакшен тащить пакеты от васянов - вообще бы руки отбивал

Такова специфика устаревшей C++ разработки
В нормальном мире, пакеты пишут и выкладывают ссылку на репу - нормальные люди.
Поэтому в современных языках можно быстро поднять http-сервер, подключив actix-web и так продолжать можно до бесконечности, а C++ для такого оказался не готов

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

253. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от анон (?), 21-Июл-20, 11:25 
Скажи честно, каких пакетов тебе не хватало в плюсах.

>В нормальном мире, пакеты пишут и выкладывают ссылку на репу - нормальные люди.

Открою тебе маленький секрет, адекватные берут только стабильную отлаженную ревизию. И никому особо не нужны микрообновы, если они не критичны.

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

278. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (179), 21-Июл-20, 14:13 
Да любые либы в C++ подключаются как г*но, причем еще хорошо что в райнтаме не отваливаются на целевой платформе.
Микрообновы не делаются просто так от нечего делать, если что.
У вас немного искривленное мировоззрение, из-за использования устаревших технологий)
Возвращайтесь в современный мир
Ответить | Правка | Наверх | Cообщить модератору

295. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 16:01 
Ох мамочки, как тебе тяжело живётся что одна комада в командной строке и две строчки в исходном коде уже проблема подключить библиотеку.

Г*но это ваши пакетные менеджеры, которые на любом продакшене нормальная служба безопасности сразу зарежет и больно ударит по рукам. Потому что именно потом мы имеем кучу утекших паролей и личной информации. Васяны наставили васянских пакетов.

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

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

311. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 17:10 
> Г*но это ваши пакетные менеджеры, которые на любом продакшене нормальная служба безопасности

Г*но у тебя в голове. Почему это ты решил что если есть централизованный репозиторий пакетов, то все остальное запрещено ?
В расте можно сделать свой локальный репозиторий пакетов, можно тянуть пакеты с гита (о Б-же, даже со своего локального). В конце, концов, можно просто указать локальный путь к папке с либой.


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

328. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 19:47 
Ну давай девопс расскажи про системное программирование и embedded. Юмористическая передача.
Ответить | Правка | Наверх | Cообщить модератору

331. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 20:38 
>Ну давай девопс расскажи про системное программирование и embedded. Юмористическая передача.

У cortex-m по нулевому адресу программы сохраняют адрес вершины стека. Адрес точки входа храниться вторым словом.

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

355. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от ann (??), 24-Июл-20, 00:38 
Молодец, освоил гугл. Теперь ты знаешь истину
Ответить | Правка | Наверх | Cообщить модератору

357. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от alex312 (?), 24-Июл-20, 12:43 
> Молодец, освоил гугл. Теперь ты знаешь истину

Ути пути. Унылый сишничек понял что не обладает никакими тайными знаниями.
Ну не переживай, в мире все равно еще много гуманитариев, которым даже трудно сменить пароль на роутере.
Так что без работы ты не останешся.

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

366. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 06-Авг-20, 21:40 
>Унылый сишничек понял

Есть вероятность что тут не сишечники жалуются, а орудует вполне себе банда из PVS Studio. Столько хейта в адрес раста, как в рунете, надо еще поискать.

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

294. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 15:58 
Ну если ты дальше вебни не смотришь то впёрёд. Уже и прогу без http сервера и actix-вебня написать не можем.

Клипай дальше свои сайтики и гордо называй их программами.

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

323. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Онаним (?), 21-Июл-20, 19:26 
> Поэтому в современных языках можно

Не забудьте включить leftPad в зависимости.


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

195. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от DEV (?), 20-Июл-20, 22:23 
в каких местах "спотыкается"?
IDE - сейчас RUST плагин в Intelij Idea весьма рабочий, и идёт в стороны самостоятельной IDE.
сам ранее некоторые проекты в VIM писал(не Расте), за поддержку вим не скажу, но там любой язык из коробки как ты хочешь не идёт, смотришь дот-файлс людей которые до тебя уже пробовали разный сетап, плагинов, присматриваешься под свои нужды.
Ответить | Правка | К родителю #181 | Наверх | Cообщить модератору

199. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от ann (??), 20-Июл-20, 22:34 
Ну я говорил про IDE, а не плагины к чему-то. Тем более Intelij. При таком раскладе лучше уж vim или emacs ковырять (те-же пляски с бубном) и доводить до нормального состояния.

Но на это нужно время. Может когда-нибудь и доростёт. Но пока увы.

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

237. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от alex312 (?), 21-Июл-20, 09:39 
>Ну я говорил про IDE

Не надо тут демагогии. Покажи хоть одно IDE, которое не текстовый редактор с плагинами.
Давай, где этот монолит прячется ?

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

296. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от ann (??), 21-Июл-20, 16:09 
QtCreator.

Из коробки умеет всё перечисленное мной. Не смотря что в названии присутсвует Qt и позицианируется как работа с проектами на Qt прекрасно кушает любой проект на C/C++ вплоть до ядра, и даже вроде питон (не пробовал)

И да, это IDE на C++ для C/C++. А не пшик на электроне с васянскими вставками.

И да, для тех кто не может жить без плагинов, они там есть если кому надо.

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

300. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от alex312 (?), 21-Июл-20, 16:16 
>QtCreator.

Нифига не монолит. Абсолютно весь функционал реализован плагинами.

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

303. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 16:32 
Не весь, далеко не весь. И более того плагины идут как часть самой среды и поставляются вместе, а не скачиваются с васянских сайтов. Более того их даже не собрать без самих исходников. И написаны н е на жопаскрипте.

Можно при желании и васянскую поделку поставить, но это надо постараться и знать что делаешь. Да и васяны боюсь не осилят для него плагин написать, что безусловно хорошо.

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

307. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от alex312 (?), 21-Июл-20, 16:51 
А вот и списочек плагивов, которых нет:
Android4
AutoTest4
AutotoolsProjectManager4
BareMetal4
Bazaar4
Beautifier4
BinEditor4
Bookmarks4
Boot2Qt4
ClangCodeModel4
ClangFormat4
ClangPchManager4
ClangRefactoring4
ClangTools4
ClassView4
ClearCase4
CMakeProjectManager4
CodePaster4
CompilationDatabaseProjectManager4
Core4
Cppcheck4
CppEditor4
CppTools4
CtfVisualizer4
CVS4
Debugger4
Designer4
DiffEditor4
EmacsKeys4
FakeVim4
GenericProjectManager4
Git4
GLSLEditor4
HelloWorld4
Help4
ImageViewer4
Ios4
LanguageClient4
Macros4
Marketplace4
McuSupport4
Mercurial4
ModelEditor4
Nim4
Perforce4
PerfProfiler4
ProjectExplorer4
Python4
qbs
QbsProjectManager4
QmakeProjectManager4
qmldesigner
QmlDesigner4
QmlJSEditor4
QmlJSTools4
QmlPreview4
QmlProfiler4
QmlProjectManager4
Qnx4
QtSupport4
RemoteLinux4
ResourceEditor4
ScxmlEditor4
SerialTerminal4
SilverSearcher4
StudioWelcome4
Subversion4
TaskList4
TextEditor4
Todo4
UpdateInfo4
Valgrind4
VcsBase4
WebAssembly4
Welcome4

Или у тебя какой-то другой QtCreator ?

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

354. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 24-Июл-20, 00:37 
А теперь скочай исходники и посмотри как это всё собирается. Слово плагин они там специально для смузихлёбов сделали, потому что другое не понимает. Если внимательно почитаешь как они создаются, как собираются и т.д. откроешь для себя истину что это правильнее было бы назвать модулем а не плагином.

Это модульная структура как и у всего Qt. И да, у меня другой. Специализированная платная версия для работы с определённым набором дисплеев в automotive.

У другого коллеги с другими дисплеями от другого производителя то-же другой. Community edition поставляется со своим набором модулей. Название plugin они для моды выбрали. Всё это идёт в одной поставке и более того, всё это собирается вместе, а не качается с васянских сайтов.

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

356. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 24-Июл-20, 12:34 
> А теперь скочай исходники и посмотри как это всё собирается. Слово плагин
> они там специально для смузихлёбов сделали, потому что другое не понимает.

Во первых, сами кутешники называют "это" плагинами.
https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/p...

Во вторых, я просил привести пример монолитного IDE. Надеюсь слово "монолитный" тебе не надо разжевывать.
Что б ты там не стал вилять и прикапываться до слов плагин/модуль/разделяемая библиотека ?
Или таки надо поискать на википедии ?

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

301. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 16:29 
На вскидку ещё KDevelop (давно не смотрел что там сейчас), Anjuta DevStudio
Ответить | Правка | К родителю #237 | Наверх | Cообщить модератору

322. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от n00by (ok), 21-Июл-20, 19:15 
>>Ну я говорил про IDE
> Не надо тут демагогии. Покажи хоть одно IDE, которое не текстовый редактор
> с плагинами.
> Давай, где этот монолит прячется ?

https://www.sourceinsight.com

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

332. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 20:40 
Я просил IDE, а это что ?

Source Insight is a powerful project-oriented programming editor. 😊

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

347. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от n00by (ok), 22-Июл-20, 07:34 
> Я просил IDE

Ну да, встроенного отладчика там нет. ЦА умеет использовать WinDbg и GDB, запуская отдельно раз в две недели.

> а это что ?

Инструмент для анализа и поддержки объёмной кодовой базы.

> Source Insight is a powerful project-oriented programming editor. 😊

Тут написано, что редактор умеет строить диаграмму наследования. И еще строит граф вызовов функций. Вы дальше картинки посмотрите и покажите "IDE" с аналогичной функциональностью.

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

252. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от DEV (?), 21-Июл-20, 11:25 
вот для VIM
https://rust-analyzer.github.io/manual.html#vimneovim

(пилят в том числе и люди из джетбрейнс - Intelij Idea)

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

297. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 21-Июл-20, 16:10 
Вот то что для вим что-то пилят это молодцы. Надеюсь допилят и можно будет хоть какое-то удоволствие от языка получить.
Ответить | Правка | Наверх | Cообщить модератору

314. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от alex312 (?), 21-Июл-20, 17:28 
а у джетбрейнса раве не свой отдельный плагин ?
Ответить | Правка | К родителю #252 | Наверх | Cообщить модератору

188. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от fsb4000 (?), 20-Июл-20, 21:43 
Отличный релиз. Каждый релиз то stack overflow, то buffer overflow:

https://github.com/rust-lang/rust/issues/74564

Как там растоманы говорят, если компилится, то значит работает. Ну-ну :)

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

189. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от ann (??), 20-Июл-20, 21:48 
Так говорить то можно. Работает или нет это уже совсем другой разговор.

Ты так не покушайся на святой раст.

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

203. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (203), 21-Июл-20, 00:40 
Язык программирования ненависти. Какой язычок сейчас облегчают, все еще с++ или на чтото другое переключились?
Ответить | Правка | Наверх | Cообщить модератору

204. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от СССР (?), 21-Июл-20, 00:52 
"Автоматическое управление памятью в Rust избавляет разработчика от ошибок при манипулировании указателями и защищает от проблем" - это бред вводящий молодых программистов в заблуждение. Если нужно быстро написать код по обработке данных, без внимания на деструкторы (да я про с++), то используйте контейнеры, там все решено с выделением, удалением элементов, освобождением памяти. Так же имеются умные указатели. Если же программист внимательный, то все эти рюшечки от раста не уместны.
Научитесь думать не модными в интернете мнениями а своей головой.
Ответить | Правка | Наверх | Cообщить модератору

215. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от Аноним (3), 21-Июл-20, 02:13 
> Если же программист внимательный

На людей лучше не полагаться. Людям свойственно ошибаться. Если можно запрячь компвйлер перепроверить за человеком, почему нет?

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

218. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от СССР (?), 21-Июл-20, 02:34 
так и используйте контейнера где нужно быстро и размер потребления в оперативе не важен, а там где важен объем, например IoT, так же как и скорость обработки, там можно сосредоточится и написать именно те структуры которые не больше не меньше, и далее уже их исползовать безопасно. Можно создать свой контенер на базе своего класса и все будет под контролем и случайных выстрелов не будет.
И потом , хватит все перекладывать на эвм, люди уже табицу умножения не знают наизусть т.к. есть же калькулятор в телефоне. Проверять свой код в плане освобождения ресурсов  - в этом нет нечего сложного, и это позволяет полностью контролировать твою программу.
А так то современный компилятор си-спп тебе много чего выдась в плане предупреждений, ошибок. Да нету тех проблем о которых пишут в интернет про си, все эти проблемы притянутые за уши, конечно неопытные программеры часто соглашаютсяя с теми доводами по понятным причинам. Нужно быть мудрым а не модным.
Ответить | Правка | Наверх | Cообщить модератору

226. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (225), 21-Июл-20, 03:30 
> И потом , хватит все перекладывать на эвм, люди уже табицу умножения не знают наизусть т.к. есть же калькулятор в телефоне.

А нафига тогда эвм нужна? Не для того, чтобы на неё перекладывать? Да и опять же, вы вот почему-то упорно утверждаете, что проверки лишают квалификации, что не имеет под собой оснований. "Я знаю, что я ничего не знаю", - как говорил Сократ, профессионал, мне кажется, редко откажется от возможности допконтроля качества.

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

Ну я писал проект на Си. Когда это всё разрастается, это легче сказать, чем сделать.

> Да нету тех проблем о которых пишут в интернет про си, все эти проблемы притянутые за уши

Есть проблемы или нет, а уязвимостей в новостях не убавляется. И это меня тревожит.

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

227. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от СССР (?), 21-Июл-20, 04:44 
нет не для того, вот автомобиль для чего нужен, что бы на дальние растояние передвигатся, что бы грузы перевозить, но ходить по преждену нужно, если человек не будет ходить то он будет больным, слабым, и быстрее умрет.
так же и эвм, предназначена для эфективного решения задачь с большими вычислениями, при этом программист который пишет программу он должен совершенстоваться в написании кода, иначе инженер-программист попросту вымрет, станет не нужным, его заменит эвм. и вот вопрос, к эволюции чего вы стремитсь? При этом если ставится задача в быстром решении при помощи абстракций, т была придумана надстройка си с классами, это когда в структуры добавили указатели на функции, далее все это превратилось в с++, и это как раз тот самый инструмент который позволяе быстро писать код, но при этом имеется возможность думать самому, т.е. программист сам решает где нужно быстро, а где окуратно.
Проверки отучают от внимательности, это уже давно известный факт в мире психологии. Попишите на пхп спроверкой кода по f5 в браузере и попишите на языке который нужно компилировать (хотя с появлением ssd, компиляция по скорости почти так же быстро как f5 в браузере при написании на пхп).
В целом доконтроль важен, и под С++ есть инструменты которые укажут на проблемный код и это классно! но речь идет не об этом, а о том, что зачем придумывать новый язык который все сам проверит но ограничит в гибкости? если на С++ можно писать быстро, по желанию используя фрэйморк например тот же QT, где все из коробки и безопасно и быстро и все уже придумано и вылизано,  и в тоже время еси нужен контроль, минимизация кода , то можно писать на голом си, использовать структуры с указателями на функции и вуяля вот тебе классы, удобно. Но когда в язык заложены ограничение это в конечном счете плохо.
в плане уязвимостей то это уже вопрос в архитектуре, опять же в том как организован обмен, хранение данных.
Ответить | Правка | Наверх | Cообщить модератору

264. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (3), 21-Июл-20, 12:56 
> так же и эвм, предназначена для эфективного решения задачь с большими вычислениями, при этом программист который пишет программу он должен совершенстоваться в написании кода, иначе инженер-программист попросту вымрет, станет не нужным, его заменит эвм. и вот вопрос, к эволюции чего вы стремитсь?

Я стремлюсь к тому, что качественно и безопасно делались задачи. Существование программистов для меня не самоцель. Плюс ко всему, у инженеров доказательств, которые формально доказывают корректность кода, квалификация нужна чуть ли не выше программисткой

>т.е. программист сам решает где нужно быстро, а где окуратно

Мне нужно везде аккуратно, и не просто аккуратно, а желательно корректно

> Проверки отучают от внимательности, это уже давно известный факт в мире психологии.

Вы же понимаете, что это все равно остаётся не простым процессом, формальное доказательство или исправление по проверкам?

> Попишите на пхп спроверкой кода по f5 в браузере и попишите на языке который нужно компилировать (хотя с появлением ssd, компиляция по скорости почти так же быстро как f5 в браузере при написании на пхп).

Писал. И когда у вас есть проект на 3к строк лигаси, и надо его поддерживать и недопускать багов..

> зачем придумывать новый язык который все сам проверит но ограничит в гибкости?
> Но когда в язык заложены ограничение это в конечном счете плохо

А вот вы задумайтесь вот над чем. Ограничения - это наоборот хорошо. В кругах функциональщиков с зависимыми типами говорят, что лучше даже не Тьюринг-полный язык. Почему? Потому что в Тп-языке нельзя доказать конечное время работы. И вообще, сложность - враг безопасности. Гибкость вредит, она повышает сложность, вы же понимаете? Если ограничить наши инструменты, то проще думать, проще решать задачу, проще делать безопасную систему. Идеальная безопасная система по-хорошему должна быть проста как дубина, как великий Шнайер завещал.

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

219. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от СССР (?), 21-Июл-20, 02:35 
на большую часть людей лучьше не пологаться, тут согласен
Ответить | Правка | К родителю #215 | Наверх | Cообщить модератору

235. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (235), 21-Июл-20, 08:59 
На себя и свои глаза надо полагаться.

Линус, Н. Вирт, Дейкстра - говорили и говорят, что код надо проверять глазами, самолично каждую строку. Эти трое к такому выводу пришли, независимо друг от друга, и глубоко убедившись в эффективности такого метода в результате многолетней практики.

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

241. "Выпуск языка программирования Rust 1.45"  –2 +/
Сообщение от СССР (?), 21-Июл-20, 10:24 
все верно, но когда заходят споры о том что в других языках можно в переменную присвоить любой тип, или то что не нужно заботится об освобождении памяти, то для таких людей вопрос - а почему бы не использовать либы или фрэймворки? тем более если учесть что и либы  и фрэймворки и новые языки пишутся на си и с++ ) . т.е смысл учить новый язык и ожидать инфраструктуру под него тратить время, если можно знать всего один язык ), хотя нет, js тоже пригодится для embeded script. т.е такое ощущение что кое кому выгодно водить молодеж за нос.
Ответить | Правка | Наверх | Cообщить модератору

268. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 13:06 
Дело не в языках и не конкретно в расте, а в идеологии разработки. Плюс вы так говорите, как будто выучить целый язык программирования - это прям дело жизни. Ну если язык сложный, как плюсы с шаблонной магией, то да, но, как говорил Шнайер: "Сложность - главный враг безопасности"
Ответить | Правка | Наверх | Cообщить модератору

266. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (3), 21-Июл-20, 13:05 
При всем моём уважении к данными корифеям и конкретно к Линусу, все баги в ядре Линус не отловит. Увы. Да и не так много этих Линусов, на всех не хватает
Ответить | Правка | К родителю #235 | Наверх | Cообщить модератору

289. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 21-Июл-20, 15:41 
При всем уважении к Вам лично, но Вы в данный момент сморозили чушь.
Ответить | Правка | Наверх | Cообщить модератору

302. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (225), 21-Июл-20, 16:31 
Не соблаговолит ли Уважаемый Аноним пояснить, в чём, по его мнению, тут чушь? Или же Его Анонимности угодно просто сказать "я против", лишь бы что, но только в оппозицию?
Ответить | Правка | Наверх | Cообщить модератору

367. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 06-Авг-20, 21:55 
>Просто не допускай ошибок, и тебе не понадобится страховочный трос (который можно снять под присмотром многих глаз - [bold][italic][red]UNSAFE)

Картинка со строителями empire state building (1930 - 1931).

[spoiler]Сдавайся единорожка, тебя ждет шнапс, сасиска!

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

368. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 06-Авг-20, 22:00 
Google, Mozilla и Microsoft с вами не согласны... oh wait!
Ответить | Правка | Наверх | Cообщить модератору

238. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Иваня (?), 21-Июл-20, 09:50 
синтаксис у него ужасен, особенно эти их макросы
Ответить | Правка | Наверх | Cообщить модератору

359. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Метис (?), 24-Июл-20, 20:56 
Смешивание двух стилей, больших букв и подчеркиваний, тоже НеПонятная_идея
Ответить | Правка | Наверх | Cообщить модератору

371. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от freecoderemail (?), 07-Авг-20, 10:50 
Это где вы такое смешивание увидели?
Ответить | Правка | Наверх | Cообщить модератору

372. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от freecoderemail (?), 07-Авг-20, 10:52 
Обычный Си + ML - подобный синтаксис, по-моему очень даже удачный. В чем конкретно проблема-то? Выглядит непривычно после Java?
Ответить | Правка | К родителю #238 | Наверх | Cообщить модератору

259. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (258), 21-Июл-20, 12:37 
Для быстрой подготовки и обкатки алгоритмов – MATLAB.

Для подготовки кроссплатформенных приложений на базе разработанных алгоритмов – FPC. Всё остальное, за исключением Ады и Фортрана, – боль.

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

291. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (-), 21-Июл-20, 15:42 
Матлаб для гнилых Вендузятников.
Ответить | Правка | Наверх | Cообщить модератору

304. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (225), 21-Июл-20, 16:32 
матлаб не виндос специфик. Но всё равно зло, ибо закрытый. Есть GNU Octave и SciLab, но они, к сожалению, не настолько мощны. Есть ещё Wolfram Mathematica, но тоже проприетарщина. Нет в этом мире благодати, эх...
Ответить | Правка | Наверх | Cообщить модератору

319. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (319), 21-Июл-20, 19:00 
Матлаб ассоциируется с Виндовс. Этого достаточно чтобы его ненавидеть.
Ответить | Правка | Наверх | Cообщить модератору

349. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Страшный Аноним (?), 22-Июл-20, 11:29 
Пока школота ненавидит Matlab на Windows, профессионалы по всему миру зарабатывают на Matlab деньги.
Ответить | Правка | Наверх | Cообщить модератору

352. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (352), 22-Июл-20, 18:38 
> Матлаб для Вендузятников.

Откуда выполз? Иногда лучше промолчать.

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

276. "Выпуск языка программирования Rust 1.45"  +2 +/
Сообщение от Аноним (276), 21-Июл-20, 13:59 
rust - шлак.
Ответить | Правка | Наверх | Cообщить модератору

305. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (225), 21-Июл-20, 16:33 
Благодарим Вас за очень ценное и аргументированное мнение, оно очень важно для нас.
Ответить | Правка | Наверх | Cообщить модератору

309. "Выпуск языка программирования Rust 1.45"  +4 +/
Сообщение от Аноним (358), 21-Июл-20, 16:53 
Откуда здесь столько странных людей которые пишут про Rust всякие гадости?
При этом создается впечатление что они ни на Rust не программировали, ни на Си, ни на питоне и вообще ни на чем.
Ответить | Правка | Наверх | Cообщить модератору

321. "Выпуск языка программирования Rust 1.45"  –1 +/
Сообщение от Аноним (319), 21-Июл-20, 19:02 
Поздравляю ты второй, который жалуется на людей, по поводу того, что те "не написали и строчки кода и при этом смеют хаять Раст".

А теперь иди и обнови свою методичку. Она устарела.

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

334. "Выпуск языка программирования Rust 1.45"  +1 +/
Сообщение от Аноним (334), 21-Июл-20, 20:58 
> давняя недоработка ... результат непредсказуем

Хахаха, безопасный язык - такой безопасный. А сколько ещё такого UB?

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

370. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от freecoderemail (?), 07-Авг-20, 10:43 
Наличие UB в safe Rust считается ошибкой компилятора. Известные подобные ошибки можно посмотреть на GitHub, они есть среди issues, помеченных как unsound: https://github.com/rust-lang/rust/issues?q=is%3Aissue+i...
Ответить | Правка | Наверх | Cообщить модератору

337. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (334), 21-Июл-20, 23:58 
когда там системду перепишут на раст?
Ответить | Правка | Наверх | Cообщить модератору

338. "Выпуск языка программирования Rust 1.45"  +/
Сообщение от Аноним (334), 22-Июл-20, 00:00 
...или миссия - невыполнима?
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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