Skip to content

sjl/temperance

Repository files navigation

,--,--'
`- | ,-. ,-,-. ,-. ,-. ,-. ,-. ,-. ,-. ,-.
 , | |-' | | | | | |-' |   ,-| | | |   |-'
 `-' `-' ' ' ' |-' `-' '   `-^ ' ' `-' `-'
               |
               '

Temperance is a logic programming library for Common Lisp.

Temperance is still in development, don't actually try to use this for anything important yet.

I don't know what that means

Temperance is an implementation of the Warren Abstract Machine in Common Lisp, designed to let you write Lispy Prolog. Its main goals are:

  • Be fast.
  • Implement a decent subset of vanilla Prolog.
  • Execute quickly.
  • Interop back and forth with Common Lisp.
  • Don't be slow.

Temperance was made with General Game Playing in mind (hence the focus on performance), but should be useful for anything you might normally use Prolog for.