Table of contents

Munje

Programming in Logic.

Munje, which in Lojban, means the universe. A universe may be something infinite (well, probably in another universe rather than the one we are currently living in), so this may be a project that will never be finished.

The basic idea is to try to create a programming language that uses as less concepts as possible. A “ordinary” programming may have more than 20 reserved keywords, while in Munje, there’s only 5, and most of them are just for structural purposes.

Programming usually involves defining concepts based on existing concepts, and when you program in Munje, you don’t have a lot existing concepts. As a result, you usually need to “define things by usage”. For example, I can’t say “a knife is a thing that has a certain shape that is made of wood and metals” because it requires a lot of work to define “shape”, “wood”, “metals” and other concepts in the beginning. In Munje, I define “knife” by using it to cut a food.

Munje also allows you to reason with time. You don’t need to say in order that “you need to do action 1, and then do action 2”. Instead, you can say, “you need to do action 1 before action 2 in order to complete this task”. And when you forget something, you can later say that “and don’t forget action 3!”. In this way, you can structure a program based on how you think rather than how a computer thinks.

Interested? Check out a previous article about Munje.