|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Котаны-братаны! Здесь я буду ворчать и бухтеть про Rust. Впрочем иногда и буду хвалить. Даже больше буду хвалить. Возможно в части ООП и типобезопасности. Какие вопросы хотелост проговорить (Primary Goals). - Типы данных. Строгость. ООП. - Строки - Коллекции - Управление памятью (самая вкуснятина) - Мультипоточка Secondary Goals - Репликатор. Если дойдут руки. - Дрова к БД ORA/PG/Mysql/MSSQL/SQLite. - Cargo. Репозитарии. Сообщества. Инфо-каналы. Топики тематически связные (ИМХО). https://www.sql.ru/forum/1173809/tyapnichnyy-benchmark-cpu-part-1 (здесь впервые потрогали его руками в сравнении) https://www.sql.ru/forum/1303834/tyapnichnaya-budushhaya-multipotochnost Просто линки по теме. https://rust-lang.org https://github.com/rust-lang Что мы говорить не будем. Мы не будем обсуждать мою персону. Это понятно. Нарушение правил как-бе. Меня тут вообще нету. Я просто как говорящее радио. Мы не будем обсуждать причины возникновения этого топика. Он возник и возник. И хрен с ним. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 19:01 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Ворчалка типо-данных. Примитивы. Целые i8, i16, i32, i64, i128 знаковые. Тоже самое с буквочкой u - знаковые. Строки - почему-то инициализируются через спец-метод. Самодостаточный код который собирается и работает. Такой себе сферический ордер на покупку 15 акций IBM. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Я завтыкал восклицательный знаке после format (!) и получил ошибку сборки. Что-то с макросами надо почитать про его роль. Интересно что туловище объекта существует отдельно от декларации его методов. В этом есть как-бы и ООП и одновременно не-ООП. Дуализм. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:30 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
После let - идут константы. Если нужна перменная - добавляют mut. Код: java 1. 2. 3.
Хм.. интересно как они поступают со ссылками на данные которые мутируют. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:35 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А вот еще интереснее. Shadowing. Не могу перевести. Затенение что-ли. Код: sql 1. 2. 3.
Здесь получается декларируются 3 константы x каждая последующая из которых "затеняет" предыдущую. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:38 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А вот интересная штучка. Tuples. Я всегда переводил как "кортежи". Не знаю правильно или нет. Rust различает скалярные и compound типы. Вот кортеж относится ко вторым. Инициализация кортежа. По нашему это анонимный класс из (int, double, byte) типов. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:42 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
С массивами вобщем ничего интересного. Код: sql 1.
Но контроль за вылет за границы - присутствует. Даже в режиме релиза. Я собрал cargo build --release и получил стандартную ошибку проверки диапазона массива. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:47 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А вот штука похожая на тернарную операцию C++/Java Код: javascript 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2020, 23:56 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А вот еще интересная тема. Функция возвращает "пару" Код: sql 1. 2. 3.
Удобная штука. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 00:04 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Далее. Пойдет Borrowing and Ownership. Относится к контролю за памятью и ссылками. Наверное отложу на завтра. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 00:09 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, В Rust главное понять работу с памятью (владение, заимствование,...), остальное не существенно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 00:11 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Надеюсь что это будет наиболее мясная часть меню. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 09:38 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, А там больше ничего и нет ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 12:16 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton , ты же знаешь C/C++, чем он тебя не устраивает? зачем плодить зоопарк языков в голове? mayton Но контроль за вылет за границы - присутствует. не бесплатно же. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 16:04 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Есть интерес посмотреть на модель памяти Rust. Принять к сведению best practices. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 16:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
полудух, по поводу выхода за границы массива. Да. Думаю есть такой пункт. Не бесплатно. Но высокий перформанс работы с массивами бывает редко. Я помню я разрабатывал в студенчестве алгортмы машинной графики. Например заштриховать полигон из пикселов в SVGA-режиме. Там я использовал прямой доступ к памяти. Это всё - достаточно low-level функций и таковые обычно в прикладном коде не используются. В прикладно (бизнес-коде) обычно мы не работаем с байтами или словами или двойными словами а с сущностями (Entity). Они - довольно крупные. И редко лежат в массивах. Чаще под покрытием итератора или стрима или еще бох знает каких абстракций. Вобщем .. индексый доступ - это достаточно low-level. А Rust насколько я понимаю создавался как язык безопасный - поэтому его поведение при выскакивании за границы array предсказуемо. В данном примере - у меня код не собрался. Компиллятор доказал что он - неработоспособен. Как глубоко (насколько ходов вперед) видит компиллятор - мы в топике проверим. Код: sql 1. 2. 3. 4.
Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 16:53 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
кому нужны эти массивы, когда есть <vector> и <array> (модуль, где всё учтено) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 18:05 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Но высокий перформанс работы с массивами бывает редко. по-моему ты неправильно относишься к массивам. это же map-to-hardware массив = ячейки памяти, 1 в 1 в C/C++, а вот в остальных языках - нет в ПХП там вообще дикие абстракции, такие, что массив занимает в X раз больше размер там и int = 40 байт а вот в C/C++ это именно память и есть, и какой такой "высокий перформанс" может быть выше этого - загадка. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 18:10 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
полудух кому нужны эти массивы, когда есть <vector> и <array> (модуль, где всё учтено) Ценное замечание. До классов коллекций я еще не дошел. Дойдем здесь https://doc.rust-lang.org/book/ch08-01-vectors.html Но я хочу закрыть тему работы с массивами тем что UB не удалось получить. Либо не будет компилляции. Либо будет зафиксирована ошибка. Об ошибках - тоже чуть позже. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 18:34 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
На сегодня - тема Ownership, Borrowing. Я попробую перевести как Владение и Одалживание в рамках данной технической доки Но ради чистоты терминологии я их оставлю as is. https://doc.rust-lang.org/book/ch04-00-understanding-ownership.html Насколько я понял. Владение (Ownership) - это наиболее уникальная фича Rust, которая позволяет создавать гарантии безопасности памяти без необходимости Garbage Collector. Поэтому очень важно понять как ownership работает в Rust. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 18:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Далее по тексту. Я двигаюсь длинными прыжками и буду постить только наиболе значимые фрагменты КМК. Правила Ownership .
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 18:57 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Работа со scope знакома всем по C++. Я не буду пересказывать. Просто фрагмент кода с каментами. Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 19:00 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Хм.. забавно crate - переводится как клетка или деревянный ящик. Смысловой паревод я пока не улавливаю. Есть варианты. Модуль. Пакет. Зависимость. Единица публикации. Пока не определился. Впервые вроде как здесь упоминается https://doc.rust-lang.org/cargo/reference/publishing.html ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 20:25 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Щас на пару часиков вернёмся в родительскую задачу. https://www.sql.ru/forum/1173809/tyapnichnyy-benchmark-cpu-part-1 Там как раз сборщик упал по причине каких-то эволюций пакетов. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190.
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Хм... тут надо понять что это за пакет. И зачем он нужен. Предположительно - это генератор случайных чисел. Попробую пофиксить. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 20:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Просто позакоментарил и компиляция прошла. Код: sql 1. 2. 3. 4. 5. 6. 7.
15 секунд на рендеринг картинки на стареньком Intel Core i3. Это в 1 поток. Шикарно. Щас переползу на рабочую станцию посмотрю как сработает в AMD/Ryzen-5. Заодно обновим статистику по бенчмаркам. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 21:15 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
8 секунд на AMD. Я ничего не понимаю. Мы перегнали "C" в 2 раза. Я щас просто сиду перепроверяю цифры. Конфигурация не менялась с год. Патчился Линукс и патчился сам Rust c зависимостями. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 22:09 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Перетестил "C"(Clang) 9 секунд. Ну что-ж наверное у меня цифры были устаревшие. Но всё равно Rust быстрее. Щас обновлю цифирки в 3х ключевых компилируемых натив-языках и опбуликую скрин. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 22:16 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Отчёт в смежном 22080587 . Чтоб тут не флудить. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2020, 22:33 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Но всё равно Rust быстрее. Царя на тебя тут нету. Сейчас любому ПТУшнику известно, что руст - недоязычек, скриптуха и ллвм огрызок. А вообще он не взлетит. Дело даже не в языке, а в том, что его разрабатывают хуже, чем js в свое время. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 06:50 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Спасибо за ценное замечание. Вы rust-разработчик? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 09:12 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Вы rust-разработчик? Нет, конечно ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 09:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
crutchmaster mayton Вы rust-разработчик? Нет, конечно Давай так. Ещё одно правило данного топика. Все слухи, сплетни и блоггерство вокруг Rust технологий мы не будем брать на веру. А будем проверять здесь. Это - инженерный подход? Инженерный. Мыж не блондинки какие нибудь? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 09:22 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Все слухи, сплетни и блоггерство вокруг Rust технологий мы не будем брать на веру. А будем проверять здесь. Что там проверять? Руст с самого начала позиционировал себя так, что хотите safe - пишите всё на руст. Этим они уже зарыли себя в могилу, потому что иди, перепиши всю эту прикладуху на руст заново. Второе - это этот их аджайл, что языку уже много лет, а они всё равно тащат с собой nightly сборки. Даже на ноде уже появился lts и можно чувствовать себя не совсем хипстором. Хотя лет через 10 может что-то и выйдет, если правда не придумают еще один руст, который будет, конечно, не совместим с этим. Некоторые уже рвутся что-то на руст переписывать, но разговоров слышно про это много, а про то как оно потом эксплуатируется - нема. А проблемы продакшона не состоят из похереных границ массива и чего-то подобного. Надо чтобы софт предсказуемо собирался и работал, не ломаясь при очередном обновлении. Как будет с поддержной руста дальше - не понятно. Сейчас видно, что они клепают фичешчи, у них каждый месяц по "стабильному" релизу, где они что-то вносят в язык. Про какой продакшен сейчас можно говорить - не понятно. И если выбирать между рустом и вба, то выбор - однозначно вба, как бы это дико не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 10:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Мне непонятно каким чудом ты сюда втащил VBA. И почему ты выше упоминал "скриптухуу" Rust - судя по спецификации - это язык строгой типизации. И статически компилируемый. Мне непонятно кто такие "они" ? Возможно ты имел в виду разработчиков Mozilla? Уточни. Тоесть с одной стороны ты вроде в теме. Сыпешь какими-то фактами. Как инсайдер. С другой стороны - твои факты сначала должны лечь на мои знания и спеку которую я приложил первой линкой. И только после этого эти факты могут быть мной приняты. Пока я услышал от тебя эмоции. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 10:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Мне непонятно каким чудом ты сюда втащил VBA. Тем, что вба стабильный и с ним железобетонно ничего делать не будут. mayton И почему ты выше упоминал "скриптухуу" Да это прикол такой. mayton Мне непонятно кто такие "они" Разрабы руста. mayton Сыпешь какими-то фактами. Как инсайдер Какой там инсайд, всё общеизвестно. Вот недавно завезли async/await можно уже что-нибудь объявить легаси и начать переписывать. Когда у разрабов закончится мет, может к чему-то всё и придёт, а пока вводят киллерфичи каждый месяц с этим можно только поиграться и пофлеймить на форуме. Похожий хайп недавно только прошел на js. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 12:52 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
crutchmaster mayton Мне непонятно каким чудом ты сюда втащил VBA. Тем, что вба стабильный и с ним железобетонно ничего делать не будут. Я не VBA разработчик. И мне он не нужен. Более того я не разрабатываю приложения под Microsoft. И мне кажется что в данном топике VBA - подобен носорогу Бертрана Рассела. Давай уже покончим с ним. ОК? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 13:04 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
crutchmaster Какой там инсайд, всё общеизвестно. Вот недавно завезли async/await можно уже что-нибудь объявить легаси и начать переписывать. Когда у разрабов закончится мет, может к чему-то всё и придёт, а пока вводят киллерфичи каждый месяц с этим можно только поиграться и пофлеймить на форуме. Похожий хайп недавно только прошел на js. Их вводят щас везде. В дотнете. В Node.JS. e.t.c. Это имеет связь с топиком https://www.sql.ru/forum/1303834/tyapnichnaya-budushhaya-multipotochnost ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 13:05 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Разрабы руста. Ну ОК. Держи меня вкурсе новостей от этих загадочных господ. На телеграм я уже подписался. Но може что-то проскочит... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 13:10 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Давай уже покончим с ним. ОК? Да речь про стабильность, а не вба. Можно заменить его C89, если угодно. Вот на нём всё собирается уже 30 лет, а будет ли что-то собираться на русте через 2 года - большой вопрос. Сейчас в стандарт ecmascript допиливают что-то раз в год, да и то ничего эпохального, а тут свежие фичи раз месяц. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 13:23 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
crutchmaster mayton Давай уже покончим с ним. ОК? Да речь про стабильность, а не вба. Можно заменить его C89, если угодно. Вот на нём всё собирается уже 30 лет, а будет ли что-то собираться на русте через 2 года - большой вопрос. Сейчас в стандарт ecmascript допиливают что-то раз в год, да и то ничего эпохального, а тут свежие фичи раз месяц. Почему ты думаешь что я хочу "что-то" этим Rust-ом заменить? Может быть я не ищу замены. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 13:33 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Двигаемся к ржавому ООП. Что там есть. Первое что удивительно. Нет конструкторов. Пишут примерно следующее. Существует единый ИСТИННЫЙ КОНСТРУКТОР. Все альтернативые способы создания объекта сводятся к вспомогательной функции которая в конечном счете вызывает The One True Constructor. Код: sql 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:22 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, немного не по core теме, какой ide пользушся? пробовал CLion для раста? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:35 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
de ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:35 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Atom + поставил плагин Rust IDE. Но я нихрена еще не научился пользоваться всеми ее возможностями поэтому - только как текстовый редактор с autocompletition. Компилиую в консоли отдельно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:43 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Далее. Наследования нет. В стандартной доке я не вижу исчерпывающего теоретического обоснования. Поэтому ищу ответы на семинарах и конференциях по Rust от смежных специалистов. Вот щас в данный момент смотрю: Rust Edinburgh #1 - Simon Brand "How Rust gets polymorphysm right" ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:45 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Далее. Trait . Был такой аналог Интерфейса в Scala. Ну... я-бы сказал что старичок Одерский первый застолбил этот термин в Scala. Буквальный перевод как черта или особенность . Пока все попытки насетапить какие-то обобщения между структурами (struct) в Rust приводят к использованию Трейтов. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 01:50 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Далее. Trait . Был такой аналог Интерфейса в Scala. Ну... я-бы сказал что старичок Одерский первый застолбил этот термин в Scala. Интересно было бы услышать на эту тему мнение его научного руководителя - старика Вирта. maytonПока все попытки насетапить какие-то обобщения между структурами (struct) в Rust приводят к использованию Трейтов. У меня впечатление, что traits в ржавчине используются точно в той же роли, в какой концепции в плюсах. ... Вообще, выработавшаяся за последние 30 лет манера рассказывать о программировании в терминах языка имярек таким способом, который тщательно избегает возможности существования иных языков во вселенной, чем дальше, тем больше раздражает. Оно шибко инженерно конечно, но не учёно, а местами и высокомерно. И само по себе превращает программирование в яичницу. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 13:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Хм.. забавно crate - переводится как клетка или деревянный ящик. Смысловой паревод я пока не улавливаю. КАМАК'овский крейт ( https://ru.wikipedia.org/wiki/КАМАК ) поможет? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 17:07 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Изопропил mayton Хм.. забавно crate - переводится как клетка или деревянный ящик. Смысловой паревод я пока не улавливаю. КАМАК'овский крейт ( https://ru.wikipedia.org/wiki/КАМАК ) поможет? Да согласен. Ящик. Поддон. Тара. Какие еще синонимы можно придумать только чтобы быть "особенным". ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 17:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton ... Какие еще синонимы можно придумать только чтобы быть "особенным". ну, у некоторых это "колёса" или "самоцветы". Короба, несомненно, звучат инженернее. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 17:26 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Далее. Наследования нет. В стандартной доке я не вижу исчерпывающего теоретического обоснования. Поэтому ищу ответы на семинарах и конференциях по Rust от смежных специалистов. Вот щас в данный момент смотрю: Rust Edinburgh #1 - Simon Brand "How Rust gets polymorphysm right" наследования нет, конструкторов нет, классов толком нет... бааа... Так мы же изобрели C ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 17:55 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Ящик. Поддон. Тара. Корзина ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 17:58 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Корзина - для сбора грибов. Лукошко - для сбора ягод. А короб с крышкой, в нём, хочешь бумаги, а хочешь - молоко храни. И всё переносное. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 18:16 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза mayton Далее. Наследования нет. В стандартной доке я не вижу исчерпывающего теоретического обоснования. Поэтому ищу ответы на семинарах и конференциях по Rust от смежных специалистов. Вот щас в данный момент смотрю: Rust Edinburgh #1 - Simon Brand "How Rust gets polymorphysm right" наследования нет, конструкторов нет, классов толком нет... бааа... Так мы же изобрели C Да. С одной стороны выглядит так будто они что-то из языка выкинули. С другой стороны. wikiRust (англ. rust — ржавчина, произносится [rʌst] — раст) — мультипарадигмальный компилируемый язык программирования общего назначения, спонсируемый Mozilla Research, сочетающий парадигмы функционального и процедурного программирования с объектной системой, основанной на типажах, и с управлением памятью через понятие «владения» (систему аффинных типов[en][7], позволяющую обходиться без сборки мусора). Объектно-ориентированное программирование как таковое языком не поддерживается, но язык позволяет реализовать большинство понятий ООП при помощи других абстракций[8]. Опять-же... я не нахожу пока того что подсветил красным цветом в официальной доке https://doc.rust-lang.org/book/ Если кто-то найдет внятное объяснение политического (тык-скыть) курса - буду признателен. Эти тезисы КМК важны для понимания того куда вообще двигается этот язык и какие цели стоят. И еще. Типаж - это trait? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 19:27 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, да, это уже почти устоялось, что trait - это типаж. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 19:34 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 19:36 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
wiki но язык позволяет реализовать большинство понятий ООП при помощи других абстракций "большинство понятий ООП" описано в книжке "Design patterns - Elements of reusable Object-Oriented software" и как он их реализовывает? про контейнеры уж не спрашиваю, коли там конструкторов нету... а вектор объектов у него хотя бы есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 20:42 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Вектор есть. Вот здесь описан https://doc.rust-lang.org/book/ch08-01-vectors.html ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 20:55 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, отнюдь. Весьма контекстная картинка. Играет роль, используется в роли, требуется борода, иначе не работает. Причем дважды контекстная - Пуговкин здесь экземпляр системы проверки типов, во время исполнения опознающий истинность реализации образа. Вопрос - а в статической системе проверки типов - как выглядит Пуговкин? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 20:55 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Пуговкин - off. Давай лучше по топику. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 20:59 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
а что по топику? ты подсвечиваешь красным фрагменты, которые либо вообще комментария не требуют, либо требуют слишком много слов даже от того, кто на самом деле в теме. Какой смысл вносил автор в "объектно-ориентированное программирование не поддерживается" - лучше бы спросить у автора текста. Но весьма вероятно, подразумевалось, что слово класс в описании языка не употребляется, нигде нет речи об "экземплярах объектов", понятие "наследование" не используется как синтаксический конструкт. И что с того? про "парадигмы функционального" примерно понятно - переменные иммутабельны по умолчанию, есть лямбды и замыкания, все это традиционно относят к "парадигмам функционального". а "политический курс" я вижу примерно так: технически заменить с++, выкинув "объектную ориентированность", но сохранив zero cors abstractions при статической типизации. вот как мне кажется, выглядело самоосознание c++ в начале 21 века: - нам уже понятно, что "ооп не нужен", но он казался нам таким привлекательным, что мы его сохраним, даже если его никто не использует. - нам остро не хватает концепций и модулей - это точно будем допиливать, пока живы - нам уже понятно, что сборщик мусора не нужен для "правильно написанной" программы, независимо, от того, использует оно "ооп" или нет. У правильно спроектированного объекта всё правильно освобождается автоматически, все RAII у нас для этого есть. - хорошо бы нарастить мышцу "безопасного программирования" в части гарантированного исключения переполнения буфера, исключить memory leak из-потерянных ссылок и крахи обращения к памяти по висячим ссылкам. - да, еще кому-то что-то про сети, визуалку и параллельные вычисления надо, но это, по большей части, вещи, внешние, библиотечные, как нам кажется, потому второстепенные. Как отвечает rust (имхо): - хорошо, что вам "ооп не нужен" - тогда у нас его сразу и не будет - сейчас (в 2009м) вы еще сами не договорились, что считать концепциями, и как точно их есть, а у нас на этом месте будут traits (хотя само слово это не совсем точно для этого контекста). - ага, вы говорите, что следующие оба два пункта обслуживаются правильной и аккуратной передачей владения объектом? во, вот это нам точно надо, и правила передачи владения... кхм... о - объектом памяти, мы прямо в синтаксис языка вошьем. (имхо, содержательно, именно это и есть центральный пункт и цель всего проекта) - так-так, там в вашей последней корзине, кажется, что-то полезное завалялось... а... мы помним, глядя на кого, вы свои обобщения в язык "внедряли". У тех ребят еще "легковесные таски" завалялись, вот их мы себе тоже сразу возьмём, потому что мы "для интернета", пока вы откладываете это на потом. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 22:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby Как отвечает rust (имхо): - хорошо, что вам "ооп не нужен" - тогда у нас его сразу и не будет - сейчас (в 2009м) вы еще сами не договорились, что считать концепциями, и как точно их есть, а у нас на этом месте будут traits (хотя само слово это не совсем точно для этого контекста). - ага, вы говорите, что следующие оба два пункта обслуживаются правильной и аккуратной передачей владения объектом? во, вот это нам точно надо, и правила передачи владения... кхм... о - объектом памяти, мы прямо в синтаксис языка вошьем. (имхо, содержательно, именно это и есть центральный пункт и цель всего проекта) - так-так, там в вашей последней корзине, кажется, что-то полезное завалялось... а... мы помним, глядя на кого, вы свои обобщения в язык "внедряли". У тех ребят еще "легковесные таски" завалялись, вот их мы себе тоже сразу возьмём, потому что мы "для интернета", пока вы откладываете это на потом. По поводу передач владения и прочее. Мне интересно. Какова будет "цена вопроса"? Тоесть насколько глубоко программист должен решать этот вопрос чтобы код считался безопасным по memory. Тоесть без утечек и попыток "чиркнуть" по памяти чужого объекта. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 22:50 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, смотря что считать "ценой вопроса". rust считает, что у вопроса нет цены. Просто используешь rust за бесплатно, и в этом месте он за бесплатно безопасен. C++ говорит - у нас теперь есть безопасное подмножество, используя которое вы не сможете выстрелить себе в ногу. Цена примерна та же - в минимуме - это цена изучения и освоения нового языка/ нового подмножества существующего языка. У вопроса о цене много разных граней может оказаться, как у хорошего бриллианта. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 23:26 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Я пока еще смотрю конфы. Сейчас - RustConf 2910 - Bringing Rust Home Фрагмент слайда Rough rule of thumb. A new language need to be 10 times better at something than any of the existing languages to make it worth the effort of introducing and support it. - Rust detects large classes of serious bugs at compile times - The cost of a bug at compile time is orders of magnitude less than in productions Rust детектирует классы серъезных багов в фазе компилляции. И еще вдогонку очевидный тезис о цене фикса этого бага. Тут как-бы и ежу понятно. Но фраза выше - заявляет о том что новый язык должен быть на порядок лучше чем существующие. Очевидно что идет попытка доказать что существующие языки (Java/C++/Python) в этом смысле хуже. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 23:42 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
ну, не на Java/Pyton они замахиваются, и не с ними сравниваются. Об этом просто забудь навсегда. Для них оказаться в одной категории с Java/Pyton, это в лучшем случае сделать красивую мину в момент признания поражения. И я бы это не за попытку доказать, а за оговорку на случай признания поражения принимал. Не в том их радость, чтобы к ним люди с Java приходили (хотя и в этом тоже в период начального создания самовоспроизводящегося коммюнити), а в том, чтобы плюсовики побросали свои знамёна, и стройно сформировали новые ряды ржавых программистов. PS Java, на моё удивление, сама, как пластилин, мнётся, и с большими видами на будущее, после смены владельцев и изгнания из проекта первосоздателей. Rust пережил фазу изгнания из проекта своих создателей почти мгновенно, за два-три года, и двинулся примерно перпендикулярно первоначальным планам, но само по себе это не доказательство непременной живучести. Не волею божьей, а волею пославших разработчиков жён, языки программирования развиваются. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 00:42 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
что до статической проверки типов в момент компиляции - по тому, что ты говоришь, похоже, что еще не смотрел посвященных этому вопросу с cppcon-2019 роликов. Вот советую это сделать. Это гонка. И гонка не только с rust, но по тому, как вопрос активизируется, и как реагируют выступающие на упоминание rust в вопросах, неявно с ним в первую очередь, как текущим предметом жёсткого хайпа. Прочие потенциальные конкуренты слишком нишевые, а со стороны Java только JIT мог бы серьёзно нервировать, но пока Java не жилец без gc, с++ может чувствовать себя совершенно комфортно, и даже не реагировать на попытки Java ускориться в развитии. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 00:54 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Вот нашел более менее внятное сравнение С++/Rust. RustConf 2019 - The Symbiotic Relationship of C++ and Rust [spoiler] ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 00:54 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby что до статической проверки типов в момент компиляции - по тому, что ты говоришь, похоже, что еще не смотрел посвященных этому вопросу с cppcon-2019 роликов. Вот советую это сделать. В CppCon2019 плейлист на 160 видосов. Ты хочешь чтобы я смотрелл до следующего года? Что там особо важное? Хотя-бы на 1-2 часа. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 01:08 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby ну, не на Java/Pyton они замахиваются, и не с ними сравниваются. Об этом просто забудь навсегда. Для них оказаться в одной категории с Java/Pyton, это в лучшем случае сделать красивую мину в момент признания поражения. Это я просто комментировал этого бородача. [spoiler] ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 01:13 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby Java, на моё удивление, сама, как пластилин, мнётся, и с большими видами на будущее, после смены владельцев и изгнания из проекта первосоздателей. Java как виртуальная машина достаточно консервативна. Она до сих пор совместима на уровне байткода с 1.1. И это правда. А наличие владельца роли не играет. Существует теневое правительство в виде JCP. Благодаря ему Java - надежна и лидирует в ентерпрайзах. Очень часто муссируется вопрос что будет если Оракл то или Оракл-сё? Купит-продаст или запретит. Да по большему счету - по барабану. Пока существует OpenJDK. Этот джин уже выпущен из бутылки так же как и Linux в 90х. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 01:26 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby Прочие потенциальные конкуренты слишком нишевые, а со стороны Java только JIT мог бы серьёзно нервировать, но пока Java не жилец без gc, с++ может чувствовать себя совершенно комфортно, и даже не реагировать на попытки Java ускориться в развитии. Она и никогда не будет жилец без GC. Исполнительная среда и язык - неотделимы. Нельзя вообще рассматривать этот язык без GC т.к. при его разработке ставились определённые цели и они были достигнуты именно так. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 01:31 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Исполнительная среда и язык - неотделимы. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 09:21 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
В вопросах сравнения Rust с чем-то неизвестным мы неизбежно будем обсуждать C++ и Java. Но если сильно углубляться - то лучше создать отдельный топик IMHO. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 10:52 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Rough rule of thumb. A new language need to be 10 times better at something than any of the existing languages to make it worth the effort of introducing and support it. ну пусть Go это расскажут. Google создал Go для одной глобальной цели - чтобы его программисты могли быстро программировать. Они снизили порог вхождения до минимума, при этом оставив производительность на около-максимуме. Там конечно му**к с комплексом бога делал оформление, как в микрософте - взял и навводил новых стандартов, вместо тех, к которым все привыкли. и поэтому там массив инициализируется как-то так: Код: plaintext 1.
но и хвост с ним. Язык таки зашёл и свою функцию выполняет на 200%. А главное - он всего в 1.5 раза медленее C/C++! В основном потому, что вся эта простота (в частности GC) - не бесплатна. Но учитывая возросшую скорость разработки - сойдёт. Так что если у ржавого корыта (или коробки, или чё там?) выйдет стать круче и проще Go... ...то он всё равно на хер никому не нужен будет. Я так думаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 11:16 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза но и хвост с ним. Wow-wow... легче с метафорами. А то он обидется. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 12:05 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза А главное - он всего в 1.5 раза медленее C/C++! В основном потому, что вся эта простота (в частности GC) - не бесплатна. Но учитывая возросшую скорость разработки - сойдёт. Смотря на чём сравнивать. Я думаю что основные фичи связанные с I/O во многих ЯП уже достаточно хорошо вылизаны чтобы не вызывать явных Bottlenecks. Тем более что Golang позиционировался как замена Python/C++ в гугловских микросервисах. Я думаю что с сетью он работает достатончно быстро. Но вот с качеством оптимизатора - там не очень. Синтетический и простой тест рендеринга 3Д-графики. (интенсивное использование double-чисел в виде вектора или tuple с публикацией на выходе ) показывает что Golang во много больше медленнее чем С++. А C++ и Rust идут примерно вровень. С++ - 9s Golang - 43s ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 12:17 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
сорри, у меня тут тырнет корова языком слизнула, вот я выпал из сети... mayton ... Она и никогда не будет жилец без GC..... сейчас я бы уже поостерегся на эту тему в безапеляционном стиле высказываться. Если правильно помню, официальные без-gc-шные сборки заявлялись как вероятные в довольно близком будущем. Если тема взлетит и получит спрос, рано или поздно что-то придется предлагать по автоосвобождению памяти. дело не в том, что джин свободный, а в том, что за этим конкретно джином весьма серьёзные деньги, маркетинг и управление. Для сложения правильной фиги всегда не меньше трёх пальцев требуется. Отсутствие любого оборачивается неправильной фигой. А у этих ребят и пальцы в запасе есть. Что до роликов - здесь я попался. Оказывается я подразумевал вот этот устаревший ролик аж 14 года. Sutter в характерной манере рассказывает как современно писать, а Macintosh показывает, что умеет тогдашняя экспериментальная версия статического анализатора кода от Microsoft. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 12:43 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby сейчас я бы уже поостерегся на эту тему в безапеляционном стиле высказываться. Если правильно помню, официальные без-gc-шные сборки заявлялись как вероятные в довольно близком будущем. Если тема взлетит и получит спрос, рано или поздно что-то придется предлагать по автоосвобождению памяти. EpsilonGC? - это вообще не GC. Это его выключатель по сути. Чисто для экспериментов. Кстати. Попробуй на досуге вывести хоть какое-то доказательство что объект можно удалить без использования коллекторов. Опять-же при условии что его ссылку могли миллион раз скопировать и вписать в глобальные объекты. И при условии что никакого явного менеджмена владением в Java нет. Все ссылки - одинаковы. Написана тонна легаси кода и поменять семантику этого кода - практически не возможно. Или это возможно только при условии создания нового языка с новыми принципами Memory Management. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:15 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby дело не в том, что джин свободный, а в том, что за этим конкретно джином весьма серьёзные деньги, маркетинг и управление. Для сложения правильной фиги всегда не меньше трёх пальцев требуется. Отсутствие любого оборачивается неправильной фигой. А у этих ребят и пальцы в запасе есть. Один из крупнейших Европейских банков использовал OpenJDK. И дело даже не в том что это не Оракловый продукт а опен-сорцный. А они использовали кастомный OpenJDK где свои-же программисты допилили фиксы по безопасности. Вообще в Java, open source комьюнити очень сильно. И влияние Оракла на это комьюнити очень часто преувеличено. А самому разработчику что? Язык знакомый? Знакомый. Значит сел. Взял jira-тикет и погнал кодить. Да што там Java... Вокруг уже клубится 10 языков которые косвенно нужны по работе. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:23 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Оказывается я подразумевал вот этот устаревший ролик аж 14 года. Sutter в характерной манере рассказывает как современно писать, а Macintosh показывает, что умеет тогдашняя экспериментальная версия статического анализатора кода от Microsoft. Я посмотрю ближе к вечеру наверное. Тема формального доказательства правоты кода или гарантия отсуствия ошибок - это тема мне интересна. И именно поэтому я поднял "бухтелку". ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:24 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:39 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
авторВообще в Java, open source комьюнити очень сильно. И влияние Оракла на это комьюнити очень часто преувеличено. Каша варится не просто разогревом котелка до бурления. Обязательно требуется правильное помешивание. Крутить мутовкой по часовой стрелке или против, определяется общим устройством механизма управления на базе обратной связи. Все колёсики здесь, как прямые, так и косвенные в руках одной корпорации. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:41 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
wiki Rust (англ. rust — ржавчина, произносится [rʌst] — раст) — мультипарадигмальный компилируемый язык программирования общего назначения, спонсируемый Mozilla Research Mozilla Firefox - протекающее говно, которое выжирает всю память на линухе каждый день надо выгружать и перезапускать ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:43 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
у не менее опенсорсного rust, тоже, кстати, единый владелец в этом смысле. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:46 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза wiki Rust (англ. rust — ржавчина, произносится [rʌst] — раст) — мультипарадигмальный компилируемый язык программирования общего назначения, спонсируемый Mozilla Research Mozilla Firefox - протекающее говно, которое выжирает всю память на линухе каждый день надо выгружать и перезапускать Согласен что Mozilla говно. Но в этой цепочке причин и следствий надо что-то развернуть в другую сторону. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:11 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
авторНаписана тонна легаси кода и поменять семантику этого кода - практически не возможно. и не нужно. если совместимость сохраняется, весь старый код работает как работал. Это не значит, что новый код рядом не может работать иначе. Это ответ сообщества c++ Известны примеры, когда корпорации выпускали такие "новые версии языка", на которых старый код просто не компилировался. Люди иногда не ведают, что творят. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:11 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby у не менее опенсорсного rust, тоже, кстати, единый владелец в этом смысле. Есть определенная разница. После последних событий с Windows7/Windows10 сообщество обращалось к синему гиганту с просьбой открыть исходники Windows-7. Разумеется пока никакого толку от этой просьбы нет. Тоже самое если Oracle попросить открыть сорцы DBMS. Но с Rust/Java немножко другая ситуация. Их сорцы доступны и вы можете их самостоятельно пересобрать. Вобщем тезис в владением требует определённого дополнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby авторНаписана тонна легаси кода и поменять семантику этого кода - практически не возможно. и не нужно. если совместимость сохраняется, весь старый код работает как работал. Это не значит, что новый код рядом не может работать иначе. Это ответ сообщества c++ Известны примеры, когда корпорации выпускали такие "новые версии языка", на которых старый код просто не компилировался. Люди иногда не ведают, что творят. Мне кажется что мы упорно съезжаем в оффтоп. Основная тема топика - Rust. И я-бы не хотел ее превращать в противостояние вообще третьих языков. Есть такое вот у меня пожелание топик-стартера. Сравнимаем Rust с языком %LANGUAGE_NAME% и всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:23 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
maytonТема формального доказательства правоты кода или гарантия отсутствия ошибок - это тема мне интересна. пока рылся в роликах, обнаружил статистически значимое присутствие оных на тему контрактов. То есть, из недовыбранного синтаксического арсенала ADA/SPARK разве что легковесные процессы и остались. Подозреваю, раз пошла такая пьянка, то и с ними почти наверно активно экспериментируют. И даже есть ролик от Andrew Sutton на тему - "а зачем бы нам понадобилась интроспекция, если мы не планируем код в рантайме модифицировать" - надо будет глянуть. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:28 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, ок. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 14:30 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Контракты - интересная тема. Но КМК она выходит за рамки языка. Из тех реализаций что я видел - это особым опразом описанные базовые интерфейсы. Вот каким контрактом покрыть возникновение NPE? Пока я не нашел решения. NPE я считаю очень важным поинтом. Это ошибка которая уже стоила человечеству в 1 милиард. И кроме того NPE является неопровержимым доказательством вины разработчика. Говоря простым языком "мы обосрались". И никакого здесь нет оправдательного фактора. Есть языки в которых заявлено отсутствие NPE. Это например Lisp. Он трактует Nil как пустой список да и вообще очень толерантен. SQL - тоже на уровне операций не боится NULL. Просто скипает обработку. Что в Rust? Заявлено принципиально отсутствие NPE? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 15:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 17:47 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
на 49й минуте он там как раз обсуждает сабж ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 17:58 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton, мой крайний офф (traits): на эту ссылку я попал с англоязычной википедии, где о происхождении термина смутно указано. http://scg.unibe.ch/archive/papers/Scha03aTraits.pdf получается, русскоязычная версия права, и в современном виде это швейцарское изобретение из Бернского университета. ------------- Контракты, там, где они контракты - это синтаксическая часть языка. В языках со статической типизацией контролируемая на этапе компиляции. В других это выполнимые в рантайме логические утверждения. Концепции формулируются как набор логических утверждений о свойствах/методах, требуемых от используемого типа, а контракты в терминах значений выражений, построенных на переменных используемого типа. Их почти единственная задача - формулировка пред/постусловий. Волшебство проектирования здесь состоит в том, как спроектировать все это вместе так, чтобы оно, будучи проверенным только на этапе компиляции вселяло в тебя уверенность в гарантиях времени выполнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 18:03 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А что за транс-гендерный парень появился? На 1й минуте перед стариком Бярне? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 09:34 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
[quote=booby] Что до роликов - здесь я попался. Оказывается я подразумевал вот этот устаревший ролик аж 14 года. Sutter в характерной манере рассказывает как современно писать, а Macintosh показывает, что умеет тогдашняя экспериментальная версия статического анализатора кода от Microsoft. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2020, 10:38 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
maytonВот нашел более менее внятное сравнение С++/Rust. RustConf 2019 - The Symbiotic Relationship of C++ and Rust посмотрел. Вообще-то это стёб седьмого уровня. Одновременно жёсткий и грустный. Как будто Изя в сентябре прошлого года уже прочитал весь текст этого топика и наговаривает в него ответы, под сладкий херес. Зашёл к нему в блог - он весь такой - с глазами на ладонях. И мат, попавший в технический контекст, сам становится техническим термином. Занятный малый - самоуволенный анархист, несущий благую весть. Но да, пожалуй, это первый явный экуменист с высоко поднятым флагом. PS Типаж как перевод для traits мне сразу не понравился. Пока ехал сегодня домой понял, что правильным переводом должно быть слово подстава . Испанец совершенно убедил меня в моей правоте. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2020, 02:01 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Испанец испанка. sorry for my fault. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2020, 02:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Полухин нагнул Rust (17:00) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 13:59 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза, о спасибо. Посмотрим. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 14:07 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза, Не, по Rust-у там фигня. А вот Go реально нагнул )) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 15:20 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза, хороший текст, хотя и маркетинговый чуть менее, чем целиком. Но, на мой взгляд, все существенные моменты в современной околоязыковой мифологии затронуты. 1) - сравнивать надо на одном и том же компиляторе, поскольку сравнивать можно с этапа не ранее, чем промежуточного представления. Допустим. Но. Промежуточное представление конкретного компилятора много лет точилось под конкретный фронтальный язык, и в нём либо просто не реализованы, либо реализованы с ошибками, возможности, необходимые новому фронтальному языку. То есть сравнение идет компилятора, который хорошо умеет переводить один фронтальный язык на промежуточное представление, а второй - как получилось в рамках текущих возможностей компилятора. 2) язык x плохой, потому что по отношению к y, компилятор, точившийся для y, вставляет дополнительные инструкции, и наверно это и есть прямое свидетельство непригодности языка x. Во первых, см. п. 1) Во вторых, место такой оказавшейся вставки - на мой взгляд - затрагивает самое существо дела. А именно - б о льшая часть борьбы вокруг безопасности сосредотачивается, в конечном счёте, вокруг вопросов о передаче параметров и их использовании в теле процедуры. Усложнение семантики в обоих моментах ведет к техническому усложнению организации вызова. И то, что современный компилятор языка x не очень хорошо видит, где синтаксические модификаторы должны приводить к наличию дополнительного кода, а где нет - на мой взгляд, целиком укладывается в позицию 1) и не является собственным недостатком языка x. 3) про язык y везде и даже в ЦЕРНе. Суть здесь в том, что всякий язык должен что-то гарантировать программисту. два замечания в этом контексте: - одно - про статическую компиляцию и связанную с ней веру в достижение конечной цели статического доказательства правильности работы программы. Нет сейчас никакого языка, который осмелился бы заявить, что окончательно достиг такой цели. второе - касательно "скорости". Гарантии, касающиеся скорости, в языках типа y стоят на двух столбах а) наши абстракции бесплатны в том смысле, что сами вы не найдёте способа получить их дешевле - здесь - допустим. б) мы гарантируем вам, что "оптимизируем" ваш код так, что не только мама программиста не узнает, её ли сын/дочь его писал, но и самому программисту придется попотеть, чтобы опознать, в том что получилось, как же оно соотносится с написанным им кодом. То есть гарантируется неотъемлемое право компилятора ломать и переставлять местами код, написанный программистом. Началось это с goto considered harmful, который был проклят именно за то, что мешает умным компиляторам ломать глупый код программиста. ЦЕРН здесь при том, что кроме передачи и маршрутизации потоков данных, там приходится производить множество вычислений, и обычно именно на данных с так или иначе плавающей точкой. Построение устойчивых и дающих правдоподобный результат алгоритмов в таких условиях - отдельное искусство. И любой "оптимизирующий" компилятор, произвольно переставляющий код программиста из соображений "скорости вычисления", не то, чтобы должен быть немедленно проклят, а технически не годен для использования на таких задачах, в которых программисту весьма желательна обратная гарантия от компилятора, когда тот даёт честное слово, гарантию того, что не будет произвольно манипулировать исходным кодом. cpp, несомненно, ведущий язык в церне, но, имхо, это результат наличия обширной библиотеки вычислительных алгоритмов, написанной на фортране чуть менее, чем целиком. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 17:32 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby, К сожалению. Ваши замечания, без практических примеров, которые можно было зачесть как действительные аргументы, звучат, выглядят и фактически являются не более чем философией. А философствовать можно до абсолютной бесконечности меняя угол и наклон точки зрения. Потому как даже памятник Пушкину с какой-то стороны является не более чем каменной задницей. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 18:17 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
hVostt К сожалению…. Почему "к сожалению"? hVostt ... Ваши замечания ... выглядят и фактически являются не более чем философией. Почему это вас печалит? Я, таки, вполне удовлетворюсь и тем, что эти замечания выглядят и не менее, чем философия. :) hVostt ... которые можно было зачесть... Примите к расчёт, что персонально Ваше желание что-либо "зачесть" совершенно бесценно для меня. hVostt А философствовать можно до абсолютной бесконечности меняя угол и наклон точки зрения.... Можно. И моё скромное мнение состоит как раз в том, что, по возможности - нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2020, 18:40 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby, Ну вот, што и требовалось доказать booby хороший текст, хотя и маркетинговый чуть менее, чем целиком. Показывать, почему это так, на фактах, я конечно же не буду. Маркетинговый и всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 03:10 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Начал смотреть. На 26-й минуте Полухин говорит о соглашениях по вызову. И о том что их менять нельзя. Полностью согласен. Нелзя. Но язык Rust - молодой и сырой. Он только в 2015 году вышел на версию 1.0. Тоесть 5 лет прошло. И если сравнивать его с историей С++ то это ничтожно мало. Это как эволюция Windows-95 - Windows-2000. Такая примерно разница. Вобщем смотрю дальше. Но не могу сказать что Полухин прям "нагибает". Нагибатор блин. Скорее просто сравнивает. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 11:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Далее. По поводу сравнения бинарников. Не очень корректно сравнивать бинарь Rust и бинарь собранный классическим компилляторо (возм GCC?) который генерирует бинарь. Тут либо надо было брать clang/rust и смотреть насколько эффективен LLVM-код на выходе. Либо просто списать этот бинарный шум на особенности самого LLVM. Тоесть по сути это замечение к другому стеку технологий. На ДРУГОМ более низком уровне. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 11:54 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
На 30-й минуте Антон говорит о том что для С++ написана уйма библиотек и т.д. в т.ч Фортран (!) Аргумент вобщем не о чем. Он не отностится напрямую к языку. Это просто еще одна констатация того факта что язык - молод. Блок unsafe { ... } и безопасность. Эта таже самая старая тема что JNI/Java, Platform Invoke/Dotnet. Ее используют не от хорошей жизни. Очень часто как временное решение для вызова протокольной библиотеки (драйвера БД) и т.п. Но сообщество обычно через несколько лет выкатывает нативный по отношению к Java/.Net драйвер который взаимодействует с сетью и нормально решает этот вопрос с unsafe {..}. Тоесть существует синергетический тренд на сокращение секций unsafe. Они не должны быть вечными. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 12:18 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
На 36 минуте Антон утверждает что Go - в 2-4 раза медленнее С++. Да. Подтверждаю что в 2 раза - точно медленее. Но общий посыл сообщения - это очень сильная манипуляция аудиторией. В конце концов те цели для которых Go создавался - достигнуты. Он оказался лучшим языком google для клепания внутренних микро-сервисов где скорость ПРОЦЕССА разработки или эффективность разработчика была бы выше чем в С++ и перформанс рантайма был бы лучше чем Python. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 13:25 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
На 40-й минуте. "Палево" касающееся скрытого отключения GC для managed языков. Очень хороший поинт. Я спецом проверю как ведется лог GC для Java implementation трассировщика луча чтоб убедится что мне повезло и я попал в промежуточек между уборками. ИЛи все таки уборка была но достаточно быстрая. Спасибо Антону. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 13:30 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton ...это очень сильная манипуляция аудиторией.... обычный троллинг, обязательная часть маркетинга. Это очень мило - подвёрстывать обратную логику сорта - раз другой язык код генерирует "хуже", значит и сам тот другой язык плохой, на фоне приговаривания - раз другой язык о себе вообще что-то говорит, значит это маркетинг, а если нас поминает, значит он плохой.... В последнем, впрочем, есть какое-то рациональное зерно. Но в целом, это уныло, продавать идею о том, cpp - лучший из языков, на конференции по cpp Там все коробейники с таким товаром. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 14:16 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton На 30-й минуте Антон говорит о том что для С++ написана уйма библиотек и т.д. в т.ч Фортран (!) Аргумент вобщем не о чем. Он не отностится напрямую к языку. Это просто еще одна констатация того факта что язык - молод. D имеет поддержку C-либ и он проще в разработке, но чё-то убийцей С++ не стал... Go вообще не имеет поддержку C-либ, но взлетел гораздо выше растов и D, и даже питона походу обогнал ...однако он правильно говорит, что строить 100500 доп. дата-центров спецом для Go никто не будет... короче говоря, C/C++ непобедим. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 14:17 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
У меня в течение лекции не покидало ощущение что Антон пошел в крестовый поход за С++ при том что с другой стороны вобщем-то никого нет. Всем пофиг. Или аудитория подобрана так что сидят С++ ники. И кому это было надо? Кому был месседж? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 14:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Типа лекция поддержки С++ newcomers? Не бойтесь ребята. У вас будет работа. Будут вакансии. Правда порог вхождения мать ево... ну ничего-ничего.... как-то разойдется. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:11 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Пример с log-stash - был вообще ниочем. Просто частный случай. Мы дескыть выкинули из него ненужный функционал и переписали на С++ и теперь давайте сравним расход ресурсов. Можно было про это не говорить. Так. Зря потраченое эфирное время. Какой вообще был информационный повод создавать эту лекцию?! Услышать от лектора "Я не люблю маркетинговый шум от других языков?" Ну... такое. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
C++ конфы вообще мало смотрят даже у https://www.youtube.com/results?search_query=cppcon+2019 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:48 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
А кто унижает? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:50 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton А кто унижает? так тесты те же самые, где C++ якобы сливает ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:51 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Дай линки. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 15:54 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
ты начало видео не смотрел чтоли? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 16:13 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Рука-лицо... тебе сложно кликабельный линк приаттачить? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 16:21 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
да нет у меня линков. Видео смотри, там словами. лично я считаю, что C++ экономит гораздо больше времени, чем требует на преодоление "порога вхождения" когда знаешь C/C++, то уже не нужны никакие другие языки и не придётся страдать от каши из разных языков и именно C++, как никто, учит программировать строго правильно, именно так, как нужно если научился на C++, то считай понял всю компьютерную начинку А заодно и сумеешь написать что угодно - хоть электронику программируй, хоть игры пиши. да и порог не такой уж и высокий, было бы желание. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 16:27 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза да нет у меня линков. Видео смотри, там словами. лично я считаю, что C++ экономит гораздо больше времени, чем требует на преодоление "порога вхождения" когда знаешь C/C++, то уже не нужны никакие другие языки и не придётся страдать от каши из разных языков и именно C++, как никто, учит программировать строго правильно, именно так, как нужно если научился на C++, то считай понял всю компьютерную начинку А заодно и сумеешь написать что угодно - хоть электронику программируй, хоть игры пиши. да и порог не такой уж и высокий, было бы желание. Другое дело. По этому пункту. >> и именно C++, как никто, учит программировать строго правильно, именно так, как нужно Согласен. >> если научился на C++, то считай понял всю компьютерную начинку Здесь можно остановится на уровне С. Эмбедщику по большей части плюсы не нужны. >> когда знаешь C/C++, то уже не нужны никакие другие языки и не придётся страдать от каши из разных языков Здесь - не согласен. Языковые науки - более глубокие и сложные чем ты думаешь. Существуют языки-архетипы. Языки - концепты и лаборатории. Из которых чуть позже идеи перекочевывают в промышленные языки. Но ты об этом конечно не знал. И считал наверное что идеи падают "комитету" прямо в головы. >> лично я считаю, что C++ экономит гораздо больше времени, чем требует на преодоление "порога вхождения" Не согласен. Сколько длился твой порог вхождения? По остальным пунктам я воздержусь. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 16:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby Но в целом, это уныло, продавать идею о том, cpp - лучший из языков, на конференции по cpp Там все коробейники с таким товаром. Лучший с точки зрения производительности. Оспорить-то никто пока не может. Понятное дело, что для разных задач разный инструмент, с самого начала были указаны сферы применения, какие претензии? При чём тут маркетинг? Всё сказанное соответствует действительности. Если это где-то не так, просьба продемонстрировать, а не болтать про маркетинг и сферических макретологов в вакууме. Уныло, не интересно, и не по адресу. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 17:35 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Или аудитория подобрана так что сидят С++ ники. И кому это было надо? Кому был месседж? Месседж, рассказать, почему C++ до сих пор актуален. Для сообщества это крайне важно. Всем хочется кушать, никто не хочет остаться у разбитого корыта. Учитывая наличие постоянно декларируемых убийцев С++, это актуально как никогда. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 17:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Пример с log-stash - был вообще ниочем. Просто частный случай. Мы дескыть выкинули из него ненужный функционал и переписали на С++ и теперь давайте сравним расход ресурсов. Можно было про это не говорить. Так. Зря потраченое эфирное время. Тоже не согласен. Цифры. У нас я почекал, сравнить не с чем, но с исходными данными бьётся. Такая же нагрузка от логстеша. И да, это немного парит. Это совершенно актуальный и практический вопрос, и сравнение совершенно в тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 17:38 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
hVostt ... Лучший с точки зрения производительности. Оспорить-то никто пока не может. .... Торвальдс может. Правда, он не только это может. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 17:45 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Согласен. mayton Не согласен. у каждого своя точка зрения ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 17:56 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
hVostt mayton Пример с log-stash - был вообще ниочем. Просто частный случай. Мы дескыть выкинули из него ненужный функционал и переписали на С++ и теперь давайте сравним расход ресурсов. Можно было про это не говорить. Так. Зря потраченое эфирное время. Тоже не согласен. Цифры. У нас я почекал, сравнить не с чем, но с исходными данными бьётся. Такая же нагрузка от логстеша. И да, это немного парит. Это совершенно актуальный и практический вопрос, и сравнение совершенно в тему. Меня поразило другое. Логстеш был настолько универсален что хавал ВСЕ (!) форматы логов. Особенно удивительно тем что формат даты в логах был разный. Я еще тогда заподозрил что он как-то слишком много действий будет делать (список регулярок штоли). Знающие логстеш - прошу подтвердить или опровергнуть. Но в рамках современного облако-строительства когда бизнесу задача нужна "на вчера" а парсить логи уже надо - он скорее всего обеспечивает очень быстрый выход в прод. Я такой подход не одобряю но я понимаю почему его берут как универсальное решение а потом кастомизируют. И я думаю что написание своей утилиты было кастомизацией хотя и тактически неправильной. Надо было профилировать под JProfiler или FlightRecoder и смотреть что именно тормозит. Если регулярка - выкосить нах. LMAX достиг перформанса соизмеримого с С++ - значит и логстеш тоже можно. Я верю в это. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 18:29 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
hVostt mayton Или аудитория подобрана так что сидят С++ ники. И кому это было надо? Кому был месседж? Месседж, рассказать, почему C++ до сих пор актуален. Для сообщества это крайне важно. Всем хочется кушать, никто не хочет остаться у разбитого корыта. Учитывая наличие постоянно декларируемых убийцев С++, это актуально как никогда. Ага. По сути идёт борьба на поголовье новых разрабов которые должны "влиться" в ряды. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 18:30 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby hVostt ... Лучший с точки зрения производительности. Оспорить-то никто пока не может. .... Торвальдс может. Правда, он не только это может. Торвальдс в р0т (хл)ебал С++. Но он - сложный человек. Как Элик в Oracle. Срёт всем в мозг - и ему позволительно. Я считаю - имеет право (Торвальдс). Это - его детище. Выстраданное... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 18:33 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton ... Торвальдс в р0т (хл)ебал С++. ... я же добавил - он не только это "хлебал". если есть желание - поищи его древний срач на тему говно ли "монолитная" архитектура построения ядра операционной системы по сравнению с "микроархитектурой". Я подозреваю, что если бы он столь агрессивно не "хлебал", то никакого стабильного многолетнего финансирования от "не названного источника" (слухи конкретный банк называют) , никакой Linux Foundation никогда бы не получил, да и самого "фаундейшена" не было бы. Как, кстати, много лет после этого, другой банк, с названным известным именем, не стал бы изымать Страуструпа из профессоров и сажать себе в штат учёным. Хоть эти две истории самостоятельные и сильно разнесены во времени, но в моём самоизолированном сознании они крепкой веревочкой связаны. То есть, Линус - причина по крайней мере некоторых тектонических движений в отрасли. Ну, так мне кажется ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 19:06 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby mayton ... Торвальдс в р0т (хл)ебал С++. ... я же добавил - он не только это "хлебал". если есть желание - поищи его древний срач на тему говно ли "монолитная" архитектура построения ядра операционной системы по сравнению с "микроархитектурой". Я помню этот срач. Ему больше 15 лет. Кажется Таннебаум топил за микро-ядра а Линус за монолоит. Но тактически победил Линус т.к. выдал нечто работающее. А теоретики остались за бортом. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 19:14 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton ...Ему больше 15 лет. Кажется Таннебаум топил за микро-ядра а Линус за монолоит. Но тактически победил Линус т.к. выдал нечто работающее. А теоретики остались за бортом. ох, скрижали лень подымать, но как бы ни больше 25 в моём сознании... во - вики про 92й год рассказывает. Таненбаум поминает этот срач. Но финансирование получил Торвальдс, примерно в это время как раз. Вот и вся история про профессоров и хакеров. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 19:43 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
ЕМНИП все было проще, начиналось засилие MS, Билл Гейтс наседал и IBM проспонсировал развитие Линукса чтобы за MS DOS не переплачивать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 20:12 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
у IBM была OS/2 а в линух вливаются сотни миллионов $$ от всяких гуглов, интелов, ораклов, айбиэмов и прочих фря о таком и не мечтает... но всё ещё держится ... |
|||
:
Нравится:
Не нравится:
|
|||
14.04.2020, 21:50 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2020, 22:05 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Алексей Роза Go вообще не имеет поддержку C-либ Что вы имеете в виду? Из Go нельзя вызвать код С? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2020, 12:06 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
microbash Алексей Роза Go вообще не имеет поддержку C-либ Что вы имеете в виду? Из Go нельзя вызвать код С? с большими костылями можно. ибо в Go другой линкер и есть GC. Теперь у них есть SWIG , жить стало легче. А то раньше C++ вообще никак. в D это просто подключение либы, как и в C/C++. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2020, 12:31 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Философия обработки исключительных ситуаций в Rust. Как известно - исключений нет. Но что есть? Как нам, разработчикам, привыкшим сидеть в теплой ванне try-catch ловить ошибки к примеру I/O? Неужели мы теперь обязаны проверять каждый статус как в языке "C" ? Вот тут я начал читать. https://doc.rust-lang.org/nomicon/unwinding.html И по поводу терминологии. Как вы переводите Unwinding? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 14:28 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
Раскручивание, развёртывание. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 20:57 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Философия обработки исключительных ситуаций в Rust. Как известно - исключений нет. Но что есть? Как нам, разработчикам, привыкшим сидеть в теплой ванне try-catch ловить ошибки к примеру I/O? Неужели мы теперь обязаны проверять каждый статус как в языке "C" ? Вот тут я начал читать. https://doc.rust-lang.org/nomicon/unwinding.html И по поводу терминологии. Как вы переводите Unwinding? Насколько я помню, неудачный unwrap приводит к панике. Надо проверять все, хотя бы результат цепочки анврапов. Исключений в расте нет , идеология владения мешает. И вообще, пора про него забыть, хайп уже прошел. Stack Unwinding - Раскрутка/размотка стека. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 21:37 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Вот тут я начал читать. https://doc.rust-lang.org/nomicon/unwinding.html И по поводу терминологии. Как вы переводите Unwinding? В данном конкретном случае я бы склонялся к переводу в стиле " завершение с ошибкой ". Но не настаиваю, по множеству причин. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 00:07 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
booby mayton Вот тут я начал читать. https://doc.rust-lang.org/nomicon/unwinding.html И по поводу терминологии. Как вы переводите Unwinding? В данном конкретном случае я бы склонялся к переводу в стиле " завершение с ошибкой ". Но не настаиваю, по множеству причин. Мда... все переводы - ужасны. Пожалуй я оставлю Unwinding как есть. Это как если-бы я стал в одном тексте переводить Thread как поток и тут-же попался бы в ловушку синонима когда пришлось вводить бы перевод для Stream. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 00:26 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
mayton Это как если-бы я стал в одном тексте переводить Thread как поток и тут-же попался бы в ловушку синонима когда пришлось вводить бы перевод для Stream. Уточняющие слова можно убирать, если смысл очевиден из контекста. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 07:09 |
|
Тяпничная ворчалка и бухтелка по поводу Rust и ООП и типобезопасности
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2022, 08:52 |
|
|
start [/forum/topic.php?all=1&fid=16&tid=1339580]: |
0ms |
get settings: |
7ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
30ms |
get topic data: |
4ms |
get forum data: |
1ms |
get page messages: |
2328ms |
get tp. blocked users: |
1ms |
others: | 372ms |
total: | 2750ms |
0 / 0 |