All Downloads are FREE. Search and download functionalities are using the official Maven repository.

it.unibo.jakta.agents.bdi.Prolog2Jakta.kt Maven / Gradle / Ivy

There is a newer version: 0.11.122
Show newest version
package it.unibo.jakta.agents.bdi

import it.unibo.tuprolog.core.Struct
import it.unibo.tuprolog.core.Term
import it.unibo.tuprolog.core.visitors.DefaultTermVisitor

object Prolog2Jakta : DefaultTermVisitor() {

    override fun defaultValue(term: Term): Term = term

    override fun visitStruct(term: Struct): Term {
        return when {
            term.arity == 2 && term.functor == "," ->
                Struct.of("&", term.args.map { it.accept(this) })
            term.arity == 2 && term.functor == ";" ->
                Struct.of("|", term.args.map { it.accept(this) })
            term.arity == 1 && term.functor == "not" ->
                Struct.of("~", term.args.map { it.accept(this) })
            else -> super.visitStruct(term)
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy