TapeBagel
TapeBagel is an esoteric programming language that uses an integer array of three integers to make up most of the commands and operators. It was made by S. R. Farmer in May, 2006, a full time SDK is currently in the works. The commands and operators consist of two to seven special characters such as the pound sign etc. The first character or set of characters tells which class the operator is in. The second character or set of characters will have another character telling which command or operator in that class (see below).
Classes
Command Classes
% - deals with the integer index
# - deals with all of the integers
& - deals with miscellaneous commands
Operator Classes
& - deals with multiplication
+ - deals with addition
$ - deals with division
- - deals with subtraction
@ - deals with outputting text
* - deals with integer 0
** - deals with integer 1
*** - deals with integer 2
^ - deals with powers
Commands
%# - adds one to the integer index
%% - resets the integer index to zero
%& - the integer that the integer index is pointing to is inputted into the program
#% - sets all of the integers to one
## - resets all of the integers to zero
&& - pauses the program
&@ - clears the screen
%++ - adds one to the integer that the integer index is pointing to
Operators
* - integer 0
** - integer 1
*** - integer 2
[int]&[int] - integer * integer
[int]+[int] - integer + integer
[int]$[int] - integer / integer
[int]-[int] - integer - integer
@[int] - outputs the integer as a character (1 = A, 2 = B, ... 26 = Z)
@@[int] - outputs the integer as an integer
Example Programs
Hello, World!
This code outputs HELLO WORLD.
%% %++ %++ %++ %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* @* ## %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* ## @* %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ %++ @* ## %++ %++ %++ %++ @* ##
Implementations
An attempt, extrapolating from this incomplete spec, by Oren Watson.