p-nand-q.com | home | computer | humor | business | pictures | about

humor

programming languages

GPLZ

gplz.yacuabll

Name says it all.

Currently, the following instructions are supported:

a  FuncDefStatement 
'  FuncCallStatement
.  VariableStatement
{  AssignmentStatement
}  AddSelfStatement
<  AddStatement
>  SubSelfStatement
k  SubStatement
b  MulSelfStatement
9  MulStatement
+  DivSelfStatement
-  DivStatement
*  ModSelfStatement
/  ModStatement
~  OrSelfStatement
|  OrStatement
%  AndSelfStatement
!  AndStatement
"  NandSelfStatement
ยง  NandStatement
$  BitOrSelfStatement
&  BitOrStatement
(  BitAndSelfStatement
)  BitAndStatement
[  IsLessStatement
]  IsEqualStatement
_  IsGreaterStatement
?  IsLessOrEqualStatement
*  IsNotEqualStatement
;  IsGreaterOrEqualStatement
,  LiteralStatement
:  PrintCharStatement
@  PrintStatement
0  NegateStatement
1  IfStatement
2  WhileDoStatement
3  UntilDoStatement
4  IfThenElseStatement
5  IfThenUnlessStatement
6  IfThenProvidedStatement
7  WhileDoUnlessStatement

Variables are encoded as ., followed by a number of # that specifies the unique name. For example, .# is a unique variable, and so is .####. Similarily, Literals are encoded as ,{#}, where the number of # specifies the content of the integer literal. 

Note that .yacuabll is completely freeform, and you can add any unused characters as comments.

Example

Hello, .yacuabll World 

{.#,#H#E#L#}.#,#L#O# #b.#,#W#O#b.#,#R#L#:.#}.#,#D# #T#H#I#}.#,#S# #F#I
NE PROGRAM DOES NOT
NECESSARILY ##}.#,######}.#,######
}.#,#
#
#
#
#
:
.
#                   THIS SPACE FOR RENT
}
.
#
,
#
#
#
}
.
#
,
#
#
#
#
:.#:.#}.#,###WORK:.#{.##,####b.##,##b.##,####:.##
b.##,###>.##,####>.##,####>.##,#:.##:.#}.#,#AS##:.#>.#,######:.#>.#,####>.#,####
:.#