You can also partially apply generics in steps wit...
# arrow
r
You can also partially apply generics in steps with this dirty trick:
Copy code
class DSLPartiallyApplied<L> {
  infix fun <A> invoke(f: () -> A): A = TODO()
}

fun <L> DSL(): DSLPartiallyApplied<L> =
  DSLPartiallyApplied()

val dsl = DSL<L>()
dsl {}