В рамках проекта vange-rs у нас реализованы экспериментальные рендеры уровней игры как с классической тесселляцией, так и с трассировкой лучей. Последний как раз сейчас переделываю для достижения корректности и лучшей производительности. Так что нормальное 3D не за горами, и как будет чем похвастаться, мы обязательно напишем ;)
Возможно, я чего-то не понимаю, но вот это стремление сэкономить на курсорных клавишах (вверх-вниз) вызывает глубочайшее недоуменее. Особенно этим грешит HP. Мне часто приходится прыгать по коду в разные стороны, читать больше, чем писать, так что хотелось бы больших и удобных стрелок.
Если программисты и далее будут писать микроконтроллеры на Node.js, то да, всё плохо. Выбор языка программирования не решает всех бед, но позволяет существенно повлиять на доверие к поведеню программ. Скажем, сильная типизация Rust позволяет избежать множества ошибок ещё до тестирования, а также гарантирует определённое поведение при исключительных ситуациях (паника).
Отставив проблемы человеческих отношений в сторону (это отдельная тема), я вижу большой потенциал в развитии парадигм программирования и инструментов, их реализующих. Скажем, если вы в функциональном языке вызываете чистую функцию с определёнными параметрами, то во-первых можете быть уверены, что результат при тех же аргументах не изменится; а во вторых, что она не станет ломать пентагон и нажимать на красную кнопку.
Как-то нецивилизованно союз распался. Побрасали кто где, буд-то второпях:
С 1991 года «Академик Сергей Королёв» стоял в порту Одессы, но у Украины на тот момент не было ни космической программы, ни денег на содержание такого корабля. В 1996 году он был продан на металлолом. Корабль «Космонавт Юрий Гагарин» постигла та же участь — последний рейс был совершен в «порт» Аланг.
удивленные ответы там от разработчиков — мол, а что, вам что-то непонятно
Хех, а можно подробнее? :)
Тут вариантов несколько. Скажем, если человек возмущается, мол, что нету доков вообще, то естественно никто не бросается описывать ВСЁ. Мы уточняем, где конкретно непонятно, чтобы с минимальными усилиями добиться максимального эффекта — хотя бы документацию прямо в коде подправить и уточнить.
Вы ж не подумайте, что мы ожидаем от всех, что наш API будет очевиден ;) Как закончим Vulkan и Metal, устаканимся с моделью API, там будет рационально и документацией заняться. Любая помощь приветствуется!
другая работает в пару раз медленнее того что вы ожидали
Для вас это критичный по скорости участок кода? В одном из следующих релизов, когда SIMD/ASM стабилизируются, эта библиотека обновится и выдаст скорость на нужном уровне.
критичные участки кода написаны на Си
Так не все же, а только те, где нужен SIMD/ASM.
а для некритичных намного удобнее пользоваться языками со сборкой мусора
Rust — это не только более безопасная работа с памятью, а и вообще с ресурсами. Не говоря уже о явном контроле за ходом исполнения (control flow), отсутсвию null pointer exception, а также других особенностях языка, нацелленых на безопасность.
не удивлюсь если это приведет к большим изменениям в стандартной библиотеке
breaking changes? Сомневаюсь. Если они что-то и будут менять в стабильных интерфейсах стандартной библиотеки, то хорошенько пройдутся crater заведомо, чтобы точно никого не сломать. Так что бояться этого нет смысла.
Например, до сих пор не стабилизированы simd-интринсики и/или ассемблерные вставки
Это достаточно нишевые фичи, доступные в ночных сборках на крайняк. Так что "давно стабилизоровался и годен к использованию" вполне истинно для большинства прикладных задач.
MIR становится транслятором по-умолчанию и становится доступна инкрементальная компиляция
Не вводите народ в заблуждение! MIR в стабильном Rust 1.11 всё так же выключен по умолчанию, а включён он в Rust 1.12 beta, вышедшей в тот же день.
В целом релиз получился достаточно скромный, что говорит только об одном — заканчивайте уже ждать чуда и начинайте писать на языке — он уже давно стабилизоровался и годен к использованию.
Не могу обойти стороной поддержку от Asus. Ноуту был год, никаких чеков не сохранилось, петля вырвана с мясом. Сказали прислать, заменили всё, теперь как новый, абсолютно бесплатно. Одно удовольствие :)
Так в том и смысл, чтобы писали на высокоуровневых языках. На SPIR-V же никто руками не пишет ;) И это не "обещают", а уже как полгода можно делать самому, при желании.
В смотрите определение не в том контексте. Наука != программирование (в целом). Вот другое, из той же вики:
Паради́гма программи́рования — это совокупность идей и понятий, определяющих стиль написания компьютерных программ (подход к программированию). Это способ концептуализации, определяющий организацию вычислений и структурирование работы, выполняемой компьютером[1].
Легковесные потоки Go вполне можно впихнуть в С++ в качестве библиотеки. Я так понимаю, совет С++ как раз эту тему разжёвывает сейчас очень активно (глядя на успехи Go). Есть же boost-fiber, в конце концов.
С Rust ситуация сложнее. Определённо есть попытки, но пока не похоже, что С++ сможет в принципе достичь того же уровня безопасности.
Парадигма — это способ мышления. Они продолжают развиваться и сегодня, как видно из примеров выше. Более того, современные инфраструктуры компиляторов (как LLVM) позволяют новым идеям воплощаться в жизнь как нельзя быстрее и легче. Новые языки появляются чуть ли не каждую неделю. В следующем году, как прогнозируют синоптики, что прирост языков удвоится ;)
В рамках проекта vange-rs у нас реализованы экспериментальные рендеры уровней игры как с классической тесселляцией, так и с трассировкой лучей. Последний как раз сейчас переделываю для достижения корректности и лучшей производительности. Так что нормальное 3D не за горами, и как будет чем похвастаться, мы обязательно напишем ;)
По скорости WebGL никогда не будет дотягивать до Vulkan/Metal.
Ну ОК, Unity WebGL, скажем, пока не очень. Но ведь на телефонах он может и Vulkan/Metal использовать. А что сможет этому противопоставить Blend4Web?
Если программисты и далее будут писать микроконтроллеры на Node.js, то да, всё плохо. Выбор языка программирования не решает всех бед, но позволяет существенно повлиять на доверие к поведеню программ. Скажем, сильная типизация Rust позволяет избежать множества ошибок ещё до тестирования, а также гарантирует определённое поведение при исключительных ситуациях (паника).
Отставив проблемы человеческих отношений в сторону (это отдельная тема), я вижу большой потенциал в развитии парадигм программирования и инструментов, их реализующих. Скажем, если вы в функциональном языке вызываете чистую функцию с определёнными параметрами, то во-первых можете быть уверены, что результат при тех же аргументах не изменится; а во вторых, что она не станет ломать пентагон и нажимать на красную кнопку.
Как-то нецивилизованно союз распался. Побрасали кто где, буд-то второпях:
Хех, а можно подробнее? :)
Тут вариантов несколько. Скажем, если человек возмущается, мол, что нету доков вообще, то естественно никто не бросается описывать ВСЁ. Мы уточняем, где конкретно непонятно, чтобы с минимальными усилиями добиться максимального эффекта — хотя бы документацию прямо в коде подправить и уточнить.
Вы ж не подумайте, что мы ожидаем от всех, что наш API будет очевиден ;) Как закончим Vulkan и Metal, устаканимся с моделью API, там будет рационально и документацией заняться. Любая помощь приветствуется!
Проблема кажется слегка надуманной:
Для вас это критичный по скорости участок кода? В одном из следующих релизов, когда SIMD/ASM стабилизируются, эта библиотека обновится и выдаст скорость на нужном уровне.
Так не все же, а только те, где нужен SIMD/ASM.
Rust — это не только более безопасная работа с памятью, а и вообще с ресурсами. Не говоря уже о явном контроле за ходом исполнения (control flow), отсутсвию null pointer exception, а также других особенностях языка, нацелленых на безопасность.
breaking changes? Сомневаюсь. Если они что-то и будут менять в стабильных интерфейсах стандартной библиотеки, то хорошенько пройдутся crater заведомо, чтобы точно никого не сломать. Так что бояться этого нет смысла.
Это достаточно нишевые фичи, доступные в ночных сборках на крайняк. Так что "давно стабилизоровался и годен к использованию" вполне истинно для большинства прикладных задач.
Не вводите народ в заблуждение! MIR в стабильном Rust 1.11 всё так же выключен по умолчанию, а включён он в Rust 1.12 beta, вышедшей в тот же день.
В целом релиз получился достаточно скромный, что говорит только об одном — заканчивайте уже ждать чуда и начинайте писать на языке — он уже давно стабилизоровался и годен к использованию.
Если хотите красиво и быстро, есть (была?..) ещё такая штука на Rust: http://autumnai.com/
Так в том и смысл, чтобы писали на высокоуровневых языках. На SPIR-V же никто руками не пишет ;) И это не "обещают", а уже как полгода можно делать самому, при желании.
В смотрите определение не в том контексте. Наука != программирование (в целом). Вот другое, из той же вики:
Ок, убедили. Только про Раст совсем мимо :)
Электромобили были ещё в 19-ом веке. Планшетов и карманных ПК тоже было немало до появления iPod и iPhone.
Не знаю. В С++ точно ничего не мешает. Одно дело — поддерживать фичу, а другое — плясать вокруг неё при дизайне языка и его стандартной библиотеки.
Легковесные потоки Go вполне можно впихнуть в С++ в качестве библиотеки. Я так понимаю, совет С++ как раз эту тему разжёвывает сейчас очень активно (глядя на успехи Go). Есть же boost-fiber, в конце концов.
С Rust ситуация сложнее. Определённо есть попытки, но пока не похоже, что С++ сможет в принципе достичь того же уровня безопасности.
Парадигма — это способ мышления. Они продолжают развиваться и сегодня, как видно из примеров выше. Более того, современные инфраструктуры компиляторов (как LLVM) позволяют новым идеям воплощаться в жизнь как нельзя быстрее и легче. Новые языки появляются чуть ли не каждую неделю. В следующем году, как прогнозируют синоптики, что прирост языков удвоится ;)