-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathREADME
48 lines (34 loc) · 1.42 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
ANTE
Ante is an esoteric programming language where all you've got is a deck of
playing cards.
FOUR REGISTERS, ZERO INITIALIZED
♦ ♥ ♠ ♣
OPERATORS, SEQUENTIAL PRECEDENCE
♦ # Add
♥ # Multiply
♠ # Subtract
♣ # Divide
SYNTAX
2-9[x]... # Assignment; the suit of first card designates
# target register
A[x] # Current value of register [x] (the Ace aces it)
K[x] # Jump to the last Q[x] label if A[x] != 0 (go see the Queen)
Q[x] # Label (the Queen is waiting)
J[x] # Print A[x] as character (Jack shows the goods)
10[x] # Print A[x] as number
Kings and Queens can have twins, triplets, etc. of the same suit. While
single K♥ goes to Q♥, K♥K♥ twins will go to Q♥Q♥ and so on.
EXAMPLE
# 15.times { |i| print i }
3♥ 5♥ # ♥ = 3 * 5
Q♥ # Label
10♦ # Print current value of ♦
A♦ 3♦ 2♠ # ♦ = ♦ + 3 - 2
A♥ 3♠ 2♦ # ♥ = ♥ - 3 + 2
K♥ # Jump to Q♥ if ♥ != 0
For more examples check out samples/*.ante files including Yusuke Endoh's
mind-boggling Ante quine (the program that prints itself):
https://github.com/michaeldv/ante/blob/master/samples/quine.ante
LICENSE
Copyright (c) 2013-2014 Michael Dvorkin
Ante is freely distributable under the terms of MIT license.