Witeal

Witeal (pronounced Whittle), is an esoteric programming language similar to brainfuck, in the way of its oversimplicity. It stands for Why is This Eaven a Language. There are 9 identifiers in Witeal.
"<" - decrement cell by one
">" - increment cell by one (max 1000 cells, 0-999)
"+" - adds one to the cell
"-" - subtracts one from the cell
"[" - declares start of loop
"]" - declares end of loop
"&" - return boolean/integer on condition
"/" - use cell
"." - indicate skip in case of error
That's it! All the commands in the entire language right there. Here's a hello world program:
 @ start program
 [ initialize loop
 [ initialize second loop
 - subtract one from cell
 &/]. loop if cell has anything in it
 >]. increment cell by one, then loop (if cell cannot be incremented, skip past loop)
 [ initialize loop
 <]. decrement cell by one, then loop (if cell cannot be decremented, skip past loop)
 ++++++++> add 'H' to cell 0
 +++++> add 'E' to cell 1
 ++++++++++++> add 'L' to cell 2
 ++++++++++++> add 'L' to cell 3
 +++++++++++++++> add 'O' to cell 4
 [+]. add ' ' to cell 5
 +++++++++++++++++++++++> add 'W' to cell 6
 +++++++++++++++> add 'O' to cell 7
 ++++++++++++++++++> add 'R' to cell 8
 ++++++++++++> add 'L' to cell 9
 ++++> add 'D' to cell 10
 - add new line to cell 11
 [ initialize loop
 / print cell
 > increment cell
 &++++++++++++<]. loop if cell is 0-10 (less than 11)
 [ initialize infinite loop
 ] close infinite loop
 _ declare end of program
but this was written for readability. When writing code, it would be better to write it like this:
 @[[-&/].>].[<].++++++++>+++++>++++++++++++>++++++++++++>++++++++++++++>[+].+++++++++++++++++++++++>+++++++++++++++>++++++++++++++++++>++
 ++++++++++>++++>-[/>&+++++++++++<].[]|
The output:
 HELLO WORLD
 
This is a simple Cat program (accepts input, then repeats as output):
 @ introduce program
 [ initialize loop
 [ initialize second loop
 - subtract one from cell
 &/]. loop if cell has anything in it
 >]. increment cell by one, then loop (if cell cannot be incremented, skip past loop)
 [ initialize loop
 <]. decrement cell by one, then loop (if cell cannot be decremented, skip past loop)
 [ initialize loop
 / print empty cell, activating input
 &->>]. if the user did not press enter, increase cell and loop again
 + if the user did press enter, clear cell
 [ initialize loop
 / print cell
 > increment cell
 &+<]. loop again (skip loop if cell is empty)
 [ initialize infinite loop
 ] close infinite loop
 _ declare end of program
or simply (or not so simply):
 @[[-&/].>].[<].[/&->>].+[/>&+<].[]_
Here's a program that compares two strings:
 @[[-&/].>].[<].++++++++++++++>+>+++++++++++++>+++++>->[/>&+++++<].[/&->>].+[/>&+<].[<].>>>>>&++++++++++++++++_>&++++++++_>&+++++++++_
 >&++++++++++++_>+++++++++++++++++++>+>+++++++++++++>+++++>++++++++++++++++++++++++++++++>++++++++>+++++>++++++++++++++++++>+++++<<<<<
 <<</>/>/>/>/>/>/>/>/.>++++++++>+++++++++</>/[]_
Its C# equivalent:
 using system;
 class Program
 {
 public static void Main(String[] args)
 {
 Console.Write("NAME\n");
 string name = Console.ReadLine();
 if (name == "PHIL")
 Console.Write("SAME HERE\n");
 Console.Write("HI");
 while(true)
 {
 }
 }
 }

Category:Languages
Category:2013
Category:Unimplemented
Category:Brainfuck derivatives
Category:Turing complete