In this case, it is rather a DSL inspired by Kotlin; it is not a full Kotlin implementation and a bunch of idiomatic syntax sugar on the top of it. The idea is to actually make it simpler and domain-specific on the top definition level. Whether it is Declarative or not is to be seen. But yeah, the new DSL makes steps towards that by basically removing the concept of tasks and dependencies between them from the representation level