BSL(ID:1301/bsl001)

Backtracking Specification Language 


for Backtracking Specification Language.

A logic programming language fundamentally different from Prolog. A nondeterministic Algol-like language where variables cannot be assigned more than once except in controlled contexts. Each BSL program corresponds to an assertion in first order logic, and executing the program amounts to proving the assertion. Used to write an expert system CHORAL for harmonization of Bach-style chorales.


References:
  • Ebcioglu, K. "Report on the CHORAL Project: An Expert System for Chorale Harmonization", RC 12628, IBM Watson Labs, 1987. view details