ORK

From Esolang
Jump to navigation Jump to search

ORK (Objekts R Kool), designed by Gregor Richards in 2005, is an object-oriented language that has a very verbose syntax, unlike most other esoteric programming languages. It's object oriented to such a degree, that even simple operations (addition, subtraction, comparisons) require the instantiation of an object. According to the spec, its divine purpose in existance is to be the polar opposite of Brainfuck.

Examples

Hello, world!

When this program starts:
There is a scribe called Writer.
Writer is to write "Hello, world!"

Cat

(in the spirit of the language this program is excessively verbose)

There is such a thing as a mouse.
A mouse can be_eaten.
A mouse has a status which is a word.
A mouse has a voice which is a scribe.
A mouse has an input which is an inputter.

When a mouse is to be_eaten:
There is a word called squeaky sound.
input is to readOne squeaky sound.
If input says it's done then status is "eaten".
voice is to write squeaky sound.

There is such a thing as a cat.
A cat can eat a mouse.
A cat has a Lingo which is a linguist

When a cat is to eat a mouse:
The mouse is to be_eaten.
Lingo's first operand is the mouse's status.
Lingo's second operand is "eaten".
Lingo is to compare.
If Lingo says it's not equal then I am to loop.

When this program starts:
There is a cat called Lucifer Sam.
There is a mouse called Gerald.
Gerald's status is "alive".
Lucifer Sam is to eat Gerald.

One Time Cat

Being as succinct as possible, against the spirit of the language.

When this program starts:
There is a word called x.
There is an inputter called y.
There is a scribe called z.
y is to readOne x.
z is to write x.

Truth Machine

There is such a thing as a truth machine.

When a truth machine is to zero:
There is a scribe called z.
z is to write 0.

When a truth machine is to one:
There is a scribe called z.
z is to write 1.
I am to loop

When a truth machine is to run a word:
There is a linguist called l.
l's first operand is the word.
l's second operand is "0".
l is to compare.
If l says it's equal then I am to zero
If l says it's not equal then I am to one

When this program starts:
There is a word called x.
There is an inputter called y.
y is to readOne x.
There is a truth machine called t.
t is to run x.

External resources