commonMain.it.unibo.tuprolog.dsl.unify.DSL.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dsl-unify Show documentation
Show all versions of dsl-unify Show documentation
Kotlin DSL for logic programming, enriched with unification facilities
@file:JvmName("DSL")
package it.unibo.tuprolog.dsl.unify
import it.unibo.tuprolog.unify.Unificator
import kotlin.js.JsName
import kotlin.jvm.JvmName
@JsName("logicProgramming")
fun logicProgramming(
unificator: Unificator = Unificator.default,
function: LogicProgrammingScopeWithUnification.() -> R
): R = LogicProgrammingScopeWithUnification.of(unificator).function()
@JsName("lp")
fun lp(
unificator: Unificator = Unificator.default,
function: LogicProgrammingScopeWithUnification.() -> R
): R = logicProgramming(unificator, function)
@Deprecated("Use `lp` or `logicProgramming` instead", ReplaceWith("lp(function)"))
@JsName("prolog")
fun prolog(
unificator: Unificator = Unificator.default,
function: LogicProgrammingScopeWithUnification.() -> R
): R = logicProgramming(unificator, function)