в каком смысле? мало готовых?
Как понять? Сами иде? Плагин для ij
Специализированной IDE только под раст нет. В планах тоже, по крайней мере в публичных. Ни от JB, ни от других компаний, ни от опенсорсеров.
можно считать helix
Он НА Rust, а не ДЛЯ Rust, не?
ну как сказать. аналитика там отлично работает из коробки именно для раста
Тогда жаль, пока одни обещания и начинания. Я за GUI на Rust не шарю, к сожалению (пока не разобрался)
Очередной vim-like редактор с treesitter и поддержкой LSP.
Так а зачем отдельная языко-специфичная IDE, если полно существующих, которые И с Растом работают?
Нет, даже обещаний и начинаний на данный момент нет. Есть два основных решения на двух платформах, всё.
Ну не знаю даже, по какой-то причине, существуют разные IDE для разных языков, а у Rust своего ничего нет. К тому же, одна программа под конкретную задачу будет лучше нескольких плагинов под редактор
Разве IDE под языки создаются? Просто Раст/го/с/с++ это все одно болото и тулзы у них одни и те же
Смешно пошутил, молодец
Шутки нет. Мне хватает RA, gdb, perf
Так чем конкретно лучше то? Особенно в контексте того, что обычно более одного языка в проекте (пусть и не в равных долях), и в каком-нибудь проекте на Расте мне всё равно нужно редачить что-то от веба, что-то от девопса™ (пусть даже просто конфиги CI типа GHA), что-то от скриптятины (пусть bash-скрипт для той же CI), и, может, какие-нибудь .c&.hники
IDE могут сильно облегчить жизнь, особенно с языками г... сильно динамичными и с кучей DSL, типа Ruby, PHP, JS, в какой-то степени Java из-за всяких Lombok-ов. Там есть больше чем просто language server, там целая пачка инструментов, чтобы заставить это светится и работать. У раста тоже есть беда - макросы. Как это лечить, учитывая, что C/C++ до сих пор спустя 20 лет нигде нормально не подсвечиваются - ¯\_(ツ)_/¯
Тем, что больше возможностей помимо тех, что предусмотрены приложением на говно-електроне
Просто посмотрите что умеет IDEA Ultimate и сравните с VSCode или Eclipse/NetBeans каким-нибудь. Меня даже функционал уровня пар в универе удивил, так что думаю люди в энтерпрайзе оценят, не зря у неё подавляющая доля в Java/Scala/Kotlin мире
В каком смысле тулзы?
При этом существуют всякие анализаторы вроде PVS-Studio (то есть тебе хватает, а Васе из соседнего отдела - нет)
gdb/lldb, perf, valgrind. Много общих вспомогательных инструментов.
Но и не общих тоже много)
Как видите, недостаточно, чтобы кто-либо выделил отдельную IDE. Мелким командам хватает существующих инструментов, а больших не существует. Плюс у языка есть проблемы, которые непонятно как решать (макросы).
А в чем проблема с макросами?
Ну так VSCode себя и не пощиционирует как IDE, в отличие от продукции JB То, что Intellijа инструментарий для работы с Джавой колоссален - это факт, и это одна из причин, почему я для себя в работе с Растом выбрал их продукцию, а не VSCode Но это не значит, что нужно придерживаться принципа 1ИДЕ-1Плагин Снова же, с Растом я работаю из ИДЕ JB
Они делают дичь, на которую IDE с трудом может реагировать или не может вовсе, а их раскрытие и отображение жрёт тонны производительности.
@ozkriff потдверждаешь?
Окей, а с макросами-то что не так (помимо того, что они делают дичь которую в них и запрограммировали)?
Так вы спросили, чем конкретно лучше. Я вам ответил. В вашем реплае человек так же задал вопрос, почему под что-то есть IDE, а под раст вот не нашлось.
Для этого достаточно открыть intellij-rust/issues, а не тегать разработчика. Моих issue там почти десяток, кстати.
С макросами не так то, что они ломают саму идею подсветки кода.
Это не проблема макросов, а тех, кто с кодом работает (тех программ)
Да, согласен, там изначально в вопросе сравнение "плагины под редактор VS одна-IDE-один-язык", и среднего не было, поэтому упустил My bad
Ну то есть IDE. Вот поэтому и беды с ними. Популярные библиотеки хардкодят в плагины, чтобы хоть какая-то подсветка была или перф не умирал в ноль, остальные стараются раскрывать по мере возможности.
Так написал, будто в ссаных текстовых редакторах это не будет проблемой. Плюс, от того, что ты в плагин это переместишь, лучше не станет, а так в IDE ты мог бы кешировать части AST между разными компонентами самой IDE (или, по крайней мере, делать это в разы быстрее, по сравнению с плагинами)
Так и делают. Вопрос в том, _что ещё_ должна уметь IDE для Rust, чтобы иметь право быть отдельным продуктом. Типа, ну, что ещё нужно, чего сейчас нет? Вы написали "нет ли IDE", но мб подразумевали, что может есть что-то, где есть то, чего вам не хватает?
В скорость она должна уметь! Вот чего ещё не умеет RA (по крайней мере на среднем железе), правда это не про JB)
Невозможно. Плагины работают со скоростью компилятора + оверхед на раскраску и инкрементальные изменения отображения. Уменьшать второе можно, но почти бесполезно (ибо малое влияние). Уменьшать первое - не их работа. Поэтому живём как живём. Опять же, привет плюсы. Сколько им лет, столько оно и тормозит, а в раст ещё поверх этого борроучекер, более сложная система типов, макросы.
Ну так там кэша какого-то нет, вроде как
Кстати, процмакросы нельзя кэшировать. Точнее, можно но не все, а какие можно - только хардкодить. Почему? Результат вызова макроса может зависеть хоть от времени на компьютере, а не от того, что передаётся в него.
в теории чистоту процмакросов можно было бы определять статически, имея белый список чистых функций
Нельзя, процмакро это бинарь
почему? при наличии исходников крейта, который экспортирует эти макросы, вполне можно
вообще что-то типа #[pure] аттрибута, или подобного авто-трейта cвязанного c Fn* трейтами действительно хотелось бы
угу, и #[total] тогда уже до кучи
Скорее модификатора
Нету у разных языков отдельных иде, есть одна идея и куча предустановленных плагинов на нее. То что они продают это как разные иде а некоторые люди ведутся это конечно гигантская победа маркетинга
Ну кроме rider. Там это не совсем IDEA.
ну кроме райдера. И флита который в разработке и про него мало что слышно
Силион тоже плагином не поставить
"Они", есть же еще microsoft visual 2019/2022, а так да, согласен
и андроид студио конечно тоже
Android Studio, вроде, и не продукт жб (а гугла)
Но вообще он бесплатный, так что не в тему
Концепция IDE это пережиток прошлого.
Хорошо, что вместо этого?
$твойлюбимыйредактор + lsp
Да все там одно и то же. Просто у clion/rider в отличие от какого-нибудь голанда процент кастомизации не 10%, а скажем 30. Осовная платформа идеи все та же. В этом собственно и успех жидбрейнов как компании
1. твой любимый редактор это и есть иде обычно 2. достаточно навороченный лсп чтобы заменить иде полностью есть только в сишарпе
Омнишарп как раз какой-то показался ниоч по сравнению с ра
не знаю что там в омнишарп. но студия работает полностью через дотнет лсп
поставь студию коммунити
> 1. твой любимый редактор это и есть иде обычно Свой редактор любят виммеры да имаксеры, иде это обезличеные энтерпрайзные инструменты.
я люблю свою идею, она позволяет мне делать быстро то где в других редакторах я страдаю. Вскод похуже но тоже ничего. Остальные обычно отвратительное нечто, где нужно 10 лет плагины в папочку собирать чтобы сделать сколько-нибудь приемлемого франкенштейна
Обсуждают сегодня