Madeye

From Esolang
Jump to navigation Jump to search

Madeye is a a model/modal programming language. It was created by User:Doesthiswork in 2017.

Overview

Madeye is an attempt to borrow grammatical moods into a programming language. And why not modal logic too while we're at it.

Model Particles

Imperative

 ! x = y

sets the value of x to y

Interrogative

 ? x = y

returns True or False

 ? z, z * z = x

creates and binds z to the square root of x

Realis

 $ x = y

introduces x as a new variable equal to y

Irrealis

 ` x = y

non-eager evaluation

Alethic Necessity

 ^ x = y

x must equal y or an error will result

Deontic Necessity

 @ x = y

creates a constraint that whenever either x or y changes then the other changes to match

Logical Operators

Not can be freely mixed into statements. For instance

 not ! x = 3

does not set x to three. And

 not ^ not ( x = y )

means that x can equal y or it can not equal y, it's all good. And and Or can also combine statements.