prolog
I've always been fascinated with Prolog as a language. It isn't that great for serious large scale development, in my opinion,
but it has some incredibly powerful and terse features. My version isn't complete, but it has the basic engine in C++ and
comes with source code. Do with it as you please, it is yours to do with as you like.
I've been developing a much more powerful platform for my own AI purposes based on NLP. Writing my own version of Prolog
and solving the problems of its language implementation without using the standard WAM (Warren Abstract Machine) or VAM
(Vienna Abstract Machine) implementations helped me visualise a lot of these problems and gave me the basic ability to start
writing SYL.