Size: a a a

2021 April 12

p

polunin.ai in rust_offtopic
потому что зависимостей дохуя
источник

EG

Emmanuel Goldstein in rust_offtopic
А если функции объявлены с разных сторон с разными сигнатурами?
источник

p

polunin.ai in rust_offtopic
как вы это решаете?
источник

SP

Stanislav Popov in rust_offtopic
ну питонка как то импортирует питоньи либы
источник

EG

Emmanuel Goldstein in rust_offtopic
Эээээ
источник

EG

Emmanuel Goldstein in rust_offtopic
Ну
Импорт в питоне это тупо exec() на текст файла, более или менее
источник

SP

Stanislav Popov in rust_offtopic
ну, проверять совместимость как то
источник

EG

Emmanuel Goldstein in rust_offtopic
Это требует интерпретируемого языка
источник

ИЛ

Иван Лещенко... in rust_offtopic
Как?
источник

EG

Emmanuel Goldstein in rust_offtopic
Ну, технически, можно зашивать сигнатуру в бинарь.
источник

EG

Emmanuel Goldstein in rust_offtopic
Проблема не в этом. Проблема в мономорфизации.
источник

ИЛ

Иван Лещенко... in rust_offtopic
Уже. extern "C"
источник

ИЛ

Иван Лещенко... in rust_offtopic
Трабл в том, что с другой стороны сигнатура не совпадает
источник

EG

Emmanuel Goldstein in rust_offtopic
С обоих сторон зашивать в бинарь и производить рантаймовую проверку.
источник

EG

Emmanuel Goldstein in rust_offtopic
Будет несколько rough edges рядом с лайфтаймами, но это решаемо.
источник

p

polunin.ai in rust_offtopic
на самом деле проблема одна
источник

EG

Emmanuel Goldstein in rust_offtopic
А вот мономорфизовать функцию из динамической библиотеки ты не можешь, потому что у тебя нет LLVM.
источник

p

polunin.ai in rust_offtopic
дженерики
источник

SP

Stanislav Popov in rust_offtopic
ну вообще в расте нет хедеров,
источник

p

polunin.ai in rust_offtopic
их невозможно засунуть в динамическую либу
источник