Skip to content
/ sanwe Public

Sanwe is an attempt at writing a simple Prolog interpreter in F#. (Very incomplete!)

Notifications You must be signed in to change notification settings

bcat/sanwe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Sanwe is an attempt at writing a simple Prolog interpreter in F#. At the
moment it is very incomplete and pretty much unusable. I'm coding it as a way
to learn more about logic and functional programming, so there's no specific
devlopment schedule at the moment. I'm still very new to both Prolog and F#, so
I'd really appreciate any comments you might have about my code. Enjoy!

== What's here ==

* An ISO-compliant Prolog lexer and parser.
* A few (probably many, actually) unknown bugs.

== What's next (in rough descending order by priority) ==

* Get a unit testing setup of some sort.
* Write many parser test cases, particularly for expressions in operator
  notation.
* Write a simple interpreter core for pure Prolog (clause database and
  unification routine).
* Implement a REPL for executing queries.
* Implement cut support in unification.
* Write a simple implementation of consult/1, not/1, and a few other builtins.
* And so on...

== Building instructions ==

To build the provided Visual Studio solution, you will need Visual Studio 2010
(or a newer version). You'll also need to install the F# PowerPack 2.0.0.0 (or
a newer version) You can try to build on Mono using the F# April 2010 CTP, but
this is completely untested. Your milage may vary if you choose the Mono route.

About

Sanwe is an attempt at writing a simple Prolog interpreter in F#. (Very incomplete!)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages