Такой вопрос: есть ли смысл при разработке своего DSL делать лямбды на основе SAM-with-receiver compiler plugin?
Вот, например, Gradle. Они сделали себе Action<T> и навесили поверх него compiler plugin.
https://docs.gradle.org/current/javadoc/org/gradle/api/Action.htmlТак делать это плюс или минус?
Насколько я понимаю, если сделать свой Action, то чуть по-лучше будет выглядеть из Java (вместо Function1 будет более вменяемое Action), но в то же время, всем, кто использует из Kotlin придётся добавлять себе sam-with-receiver плагин, чтобы их компилятор понимал, что у Action есть receiver. Вот второе как-то неочень радует.