Regelbasierte Programmiersprache
Bei regelbasierte Programmiersprachen besteht das Programm nicht aus einer vom Entwickler festgelegten Folge von Befehlen, sondern aus einer Menge von Regeln.
Ein regelbasiertes Programm wird auf eine Menge von Fakten angewendet (die Knowledge Base). Normalerweise arbeiten regelbasierte Programmiersprachen mit Forward Chaining: Es werden die Regeln gesucht, deren Bedingungen aufgrund der vorliegenden Fakten erfüllt sind. Die Konsequenzen dieser Regeln werden ausgeführt. Dabei können neue Fakten entstehen, die dazu führen, dass weitere Regeln angewendet werden können. Das Ergebnis eines Programmlaufs steht fest, wenn keine weiteren Regeln mehr angewendet werden können.
Regelbasierte Programmiersprachen eignen sich für Probleme, die, wenn in einer imperativ-objektorientierte Programmiersprache gelöst, zu Programmen mit vielen Verzweigungen mit komplizierten Bedingungen führen würden.