Size: a a a

2020 March 02

Т8

Т-34 85 in rust_offtopic
polunin.ai
Лол, вопрос зачем всё ещё в силе. Почему при компиляции не сверять типы?
Не всегда это возможно
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Лол, вопрос зачем всё ещё в силе. Почему при компиляции не сверять типы?
Например, ты делаешь IoC контейнер, какую-нибудь модульную в рантайме систему и т.д. и т.п.
источник

DS

Doge Shibu in rust_offtopic
Т-34 85
А что тогда такое "интроспекция"?
Примерно то же самое, но другими словами.
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Например, ты делаешь IoC контейнер, какую-нибудь модульную в рантайме систему и т.д. и т.п.
Хз шо это ну ладно
источник

λ

λоλторт in rust_offtopic
Dollar Føølish
А если нет то как?
Если не специализирутеся автоматически, то можно попрофилировать и явно прописать в коде, где нужно проводить специализацию
источник

p

polunin.ai in rust_offtopic
Наверное Раст с его проверками в компайл тайме разъел мозг
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Наверное Раст с его проверками в компайл тайме разъел мозг
Т.е. простейший пример: система плагинов.

Ты в рантайме грузишь jar или dll (если про C# речь) с плагинами, выбираешь оттуда все типы, которые реализуют данный интерфейс, инстанциируешь их, подключаешь к системе.
источник

λ

λоλторт in rust_offtopic
Dollar Føølish
Кстати такой вопрос, мне кажется компайл тайм рефлексия хорошим решением. Как вы думаете есть ли принципиальные недостатки?
Решение хорошее, но для авторов компиляторов часто сложное
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Т.е. простейший пример: система плагинов.

Ты в рантайме грузишь jar или dll (если про C# речь) с плагинами, выбираешь оттуда все типы, которые реализуют данный интерфейс, инстанциируешь их, подключаешь к системе.
Понял. Но как мне кажется такое и статически должно уметь проворачиваться.
источник

p

polunin.ai in rust_offtopic
Тут ошибочка в статье
источник

Т8

Т-34 85 in rust_offtopic
polunin.ai
Понял. Но как мне кажется такое и статически должно уметь проворачиваться.
Ну попробуй
источник

p

polunin.ai in rust_offtopic
Ну как минимум вместо "берешь все типы реализующие интерфейс" можно "вызываешь функцию", а эта функция уже инстанциирует там массив объектов с этим интерфейсом. И это уже вполне статически описывается.
источник

p

polunin.ai in rust_offtopic
*функция из либы той
источник

G

Gymmasssorla in rust_offtopic
polunin.ai
Ну как минимум вместо "берешь все типы реализующие интерфейс" можно "вызываешь функцию", а эта функция уже инстанциирует там массив объектов с этим интерфейсом. И это уже вполне статически описывается.
Как функцию возьмёшь?
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
Как функцию возьмёшь?
Всмысле?
источник

G

Gymmasssorla in rust_offtopic
Как функцию из плагина возьмёшь?
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
Как функцию из плагина возьмёшь?
По названию...
источник

p

polunin.ai in rust_offtopic
Я хз чё ты хочешь
источник

G

Gymmasssorla in rust_offtopic
Поступает на вход тебе JAR, дальше что?
источник

AZ

Alex Zhukovsky in rust_offtopic
polunin.ai
Тут ошибочка в статье
источник