Follow me on github!:


Set Theory is the foundation of mathematics. It is the foundation for Zermelo-Fraenkel axioms(ZFC), The axioms are the 9 rules that are used to build up on all of mathematics. If a language can be created that can model these axioms, then that language could theoretically be used to model all of mathematics (superficially, without dealing with the concept of infinity)

What it does

It defines the basic properties of sets, such as union,intersection, set difference, symmetric difference, and power set.

How I built it

Common Lisp.

Challenges I ran into

I ran into great difficulty trying to define the cantor-product, which is a necessary function for my language. I struggled a bit on defining the power set too, but thank you stack-overflow!

Accomplishments that I'm proud of

I am proud that I was able to accomplish this my myself.

What I learned

I learned how to build a tiny toy compiler that generated Common Lisp code. I've never put so much effort into coding 3 lines in my life, it was worth it.

What's next for The Cantor Programming Language

Now that the foundations are set. I can then move on to defining real numbers. I can use the functions to define Set Theory functions (the relation between the input and output of two sets). This programming language is not general, so it would be great to have it work on file/io. The main goal is build a Turing machine with it to prove that it's Turing Complete. I also need to create a syntax for it, since it doesn't have any.

Built With

  • common-lisp
Share this project: