KANREN: A declarative applicative logic programming system, based on Scheme Jun 6th, 2004 KANREN: A declarative applicative logic programming system, based on Scheme