Size: a a a

2020 June 21

AN

Alexander Nozik in Kotlin JVM
Iaroslav Orlov
просто задается пользователем
то есть арность известна?
источник

IO

Iaroslav Orlov in Kotlin JVM
да
источник

IO

Iaroslav Orlov in Kotlin JVM
Iaroslav Orlov
у меня есть идеи костылей, конечно, но я могу сделать страшное
вот как-то так можно :)
источник

ПФ

Паша Финкельштейн... in Kotlin JVM
Тогда это FunctionN :)
источник

IO

Iaroslav Orlov in Kotlin JVM
Iaroslav Orlov
вот как-то так можно :)
но оно ужас.
источник

AN

Alexander Nozik in Kotlin JVM
источник

IO

Iaroslav Orlov in Kotlin JVM
Паша Финкельштейн
Тогда это FunctionN :)
ну а мне нужно любой функциональный тип превратить в FunctionN
источник

IO

Iaroslav Orlov in Kotlin JVM
я видел. но оно internal
источник

IO

Iaroslav Orlov in Kotlin JVM
можно только через джаву обойти, но это так себе.
источник

AN

Alexander Nozik in Kotlin JVM
Iaroslav Orlov
но оно ужас.
почему ужас?
источник

IO

Iaroslav Orlov in Kotlin JVM
Alexander Nozik
почему ужас?
потому что у меня вскрылась рефлексия там, где она по логике не нужна
источник

AN

Alexander Nozik in Kotlin JVM
Iaroslav Orlov
потому что у меня вскрылась рефлексия там, где она по логике не нужна
Как это не нужна? А откуда знать арность если не из рефлексии?
источник

IO

Iaroslav Orlov in Kotlin JVM
Alexander Nozik
Как это не нужна? А откуда знать арность если не из рефлексии?
нуу, мало ли, может котлин компайлер знает, что Function1 это FunctionN(arity=1)
источник

ПФ

Паша Финкельштейн... in Kotlin JVM
можно кодогенерацией порешать, нет?
источник

ПФ

Паша Финкельштейн... in Kotlin JVM
просто сгенерировать транслирующий код
источник

AN

Alexander Nozik in Kotlin JVM
Паша Финкельштейн
можно кодогенерацией порешать, нет?
professional deformation detected. Кодогенерация - это как бы крайний случай
источник

IO

Iaroslav Orlov in Kotlin JVM
я пытаюсь сделать просто библиотеку без плагина компилятора...
источник

ПФ

Паша Финкельштейн... in Kotlin JVM
ну мне кажется наоборот. Ты один раз генерируешь файл-конветер и используешь его. Он тебе ничего не стоит, у него нет оврхеда рефлексии, все функции могут быть инайнами чтобы не поить объектов
источник

AN

Alexander Nozik in Kotlin JVM
Iaroslav Orlov
я пытаюсь сделать просто библиотеку без плагина компилятора...
А чего оно должно делать? Каким образом пользователь задает функцию и что с ней дальше надо делать? Возможно можно обойтись другими способами
источник

IO

Iaroslav Orlov in Kotlin JVM
и я хочу решить проблему с помощью dsl такую, что она раньше решалась только через жесткое наследование и аннотации
источник