Robotic smiley face
- The title of this article is not correct because of technical limitations. The correct title is actually :].
The esoteric programming language :] is a language by Cinnamony made practicly out of only smileys.
Commands
The given description for :0
is "says what is infront of it, string, number, or variable"
The given description for :|
is "when alone, calls for user input"
when used with :0
behind it, calls for user input and then says it
when used with :)
behind it, it sets the variable to user input"
The given description for :)
is "when alone, sets variable to blank"
when used with :0
behind it, says the variable
when used with :)
behind it, sets variable to itself
when used with a string infront of it, sets variable to string infront
when used with a number infront of it, sets variable to number infront
when used with :|
infront of it, calls for user input and then sets variable to input"
The given description for :D
is "increases variable by 1"
The given description for D:
is "decreases variable by 1"
The given description for ):
is "sets variable to 0"
The given description for :(
is "ends script"
The given description for :]]
is "repeats the code below until :[[ until this happens:
when a :) == i
is infront, until the variable is equal to i
when a number is infront, that many times
when a :) < i
, :) > i
, :) >= i
, or :) <= i
, it behaves like normal Python booleans"
The given description for :[[
is "just an ender for :]]
"
The given description for >:0
is "comment"
Examples
Hello World
:0 “hello world” :(
Cat Script
:0 :| :(
Numbers Going Up Script
): :]] :) == -1 :0 :) :D :[[ :(
Looping Counter
The following program counts from 1 up to 15, printing on each line a tally of asterisks (“*”) tantamount to the current counter, or variable, state:
): :D :]] :) == 15 :]] :) :0 “*” :[[ :0 “ ” :D :[[ :(
Truth-Machine
The following provides a truth-machine:
:) :) :| :]] :) == 0 :0 :) :[[ :0 :) :(
Interpreter
- Common Lisp implementation of the :] programming language. Please note that the concrete character set deployed constitutes a dependency on the Common Lisp implementation; in corollary, Unicode support may or may not be a feature incorporated in the personal environment. The interpreter at hand has been developed and tested with Steel Bank Common Lisp (SBCL) version 1.1.4 as part of the Lisp Cabinet 0.3.5 bundle.
See also
Smileyface, which very similarly employs smiley variations to communicate its effects