Kitanai

The original interpreter is made with C++.
(By the way, Kitanai means "dirty" in Japanese (Obviously refering to the language's syntax))

Full language Syntax :
Usage : (Any code goes here) Usage : [Any code goes here] Usage : ?(condition code)(code executed if condition code returns anything except 0)(code executed if condition code returns 0). Usage : $"position" OR $366 Description : "position" is the name of the "variable" you want to access and "366" is the sub-case of your variable).    Usage : @      Description : Returns the current value pointed in the Memory.     Usage : #     Description : Creates a new flag.     Usage : &(x)     Description : Jump to the (x) flag (Where x is the number of the flag).     Usage : *(x)     Description : Jump to the (x) flag (Where x is the number of the flag) without adding the origin to the pile.     Usage : &~     Description : Jump to the DynamicFlag created just after the previous Goto.     Usage : !     Description : Pause code execution until encountering a new ToggleExecution.     Usage : %     Description : Ends the program.
 * ( : Begin Instruction Bloc
 * ) : Stop Instruction Bloc
 * [ : Begin Memory Access
 * ] : Stop Memory Access
 * ? : Condition
 * $ : AccessMemoryPosition
 * @ : CurrentMemoryValue
 * # : Flag
 * & : Goto
 * * : GotoNoOrigin
 * ~ : Origin
 * ! : ToggleExecution
 * % : End

Standard Library
Here are the available functions :

Description : Returns the concatenation of the two strings given as parameters. Description : Returns the sum of the two numbers given as parameters. Description : Returns the subtraction of the two numbers given as parameters. Description : Returns the multiplication of the two numbers given as parameters. Description : Returns the division of the two numbers given as parameters. Description : Returns the Number(1) is the two strings are equal else it returns Number(0). Description : Returns the Number(1) is the two numbers are equal else it returns Number(0). Description : Returns the Number(0) is the two strings are equal else it returns Number(1). Description : Returns the Number(0) is the two numbers are equal else it returns Number(1). Description : Returns the Number(1) is the first string has a greater length than the second string else it returns Number(0). Description : Returns the Number(1) is the first number is greater than the second one else it returns Number(0). Description : Returns the Number(1) is the first string has a greater or equivalent length than the second string else it returns Number(0). Description : Returns the Number(1) is the first number is greater or equal than the second one else it returns Number(0). Description : Returns the Number(1) is the second string has a greater length than the first string else it returns Number(0). Returns the Number(1) is the second number is greater than the first one else it returns Number(0). Description : Returns the Number(1) is the second string has a greater or equivalent length than the first string else it returns Number(0). Returns the Number(1) is the second number is greater or equal than the first one else it returns Number(0). Description : Prints the (string). Description : Returns the string entered by the user and displays the (string) as a prompt. Description : Does nothing. Description : Converts an int to a string. Description : Converts a string to an int. Description : Does nothing. Description : Returns a random Number from 0 to 1. Description : Returns the substring of (string) between the first and the second number. Description : Returns the (string) encoded with base64. (Base Sixty Four = bsf) Description : Returns the (string) decoded with base64 (Base Sixty Four = bsf)
 * add (string) (string) :
 * add (number) (number) :
 * sub (number) (number) :
 * mul (number) (number) :
 * div (number) (number) :
 * eq (string) (string) :
 * eq (number) (number) :
 * neq (string) (string) :
 * neq (number) (number) :
 * gt (string) (string) :
 * gt (number) (number) :
 * ge (string) (string) :
 * ge (number) (number) :
 * lt (string) (string) :
 * lt (number) (number) :
 * le (string) (string) :
 * le (number) (number) :
 * print (string)       :
 * input (string)       :
 * string (string)      :
 * string (number)      :
 * int (string)         :
 * int (number)         :
 * random               :
 * substr (string) (number) (number) :
 * bsf (string)         :
 * ubsf (string)        :

Examples
(All of the following versions works) print "Hello, world!" print("Hello, world!") print"Hello, world!" ["Hello, world!"] print @ ["Hello, world!"] print(@) ["Hello, world!"]print@
 * Hello World

print(input(""))
 * Cat

$0[int(input "Fib : ")] $1[1]$2[1]   $3[$1@]    $1[$2@]    $2[add @ ($3@)] $0[sub @ 1] ?(neq ($0@) 1) (&1) print($1@)
 * Fibonacci

$"quant"[99] ?(gt @ 1) (       print((add(add(add (string @) " bottles of beer on the wall, ")(string @)) " bottles of beer."))        ?(gt @ 2) ( $"suffix"[add (string(sub ($"quant"@) 1)) " bottles of beer on the wall."] ) (           $"suffix"["1 bottle of beer on the wall."] )   ) (        ?(eq ($"quant"@) 1) ( print "1 bottle of beer on the wall, 1 bottle of beer." $"suffix"["no more beer on the wall!"] )   )    print (add "Take one down, pass it around, " ($"suffix"@)) print "" $"quant"[sub @ 1] ?(neq @ 0) (&1) %
 * 99 bottles of beer

$0[0]#$1[input">> "]?(add(eq($0@)256) (eq($0@)-1))([0])?(eq($1@)"i")($0[add@1])? (eq($1@)"d")($0[sub@1])?(eq($1@)"o") (print($0@))?(eq($1@)"s")($0[mul@@])&1 $"accumulator"[0] $"userInput"[input">> "] ?(eq ($"accumulator" @) 256) ($"accumulator"[0]) ?(eq ($"accumulator" @) -1) ($"accumulator"[0]) ?(eq ($"userInput" @) "i") ($"accumulator"[add @ 1]) ?(eq ($"userInput" @) "d") ($"accumulator"[sub @ 1]) ?(eq ($"userInput" @) "o") (print($"accumulator" @)) ?(eq ($"userInput" @) "s") ($"accumulator"[mul @ @]) &1 &0[ubsf"RW50cmV6IHVuIG5vbWJyZSAo"]&0[ubsf"IGVzc2FpcykgOiA="]&0[ubsf"Qydlc3QgcGx1cyAh"]&0 [ubsf"Qydlc3QgbW9pbnMgIQ=="]&0[ubsf"TG9vc2Vy"]&0[ubsf"V2lubmVyIGVuIA=="]&0[ubsf"IGVzc2Fpcw=="] &0$"a"[0]&2$"s"[int(mul random 100)]$"t"[6]$"k"[0]#$"u"[int(input(add(add"a"[1]&2($"t"@))"a"[2]&2$"u"))] &2?(eq($"t"@)0)(&3)?(eq($"k"@)1)(&4)&1#?(eq($"s"@)($"u"@))($"k"[1]&~)($"t"[sub @1]?(gt($"s"@) ($"u"@))(print"a"[3]&2)(print"a"[4]&2)&~)#print"a"[5]&2%#print(add(add"a"[6]&2(sub 6($"t"@)))"a"[7]&2)% print "Bienvenue sur le jeu du plus ou moins" $"secretNumber" [int(mul random 100)] $"try" [6] $"numberFound" [0]
 * Compact Deadfish Interpreter :
 * Clean Deadfish Interpreter :
 * Compact More or Less Game
 * 1) $(add ?1)[$"x"$0@]#print($"a"@)$"x"[ubsf"QmllbnZlbnVlIHN1ciBsZSBqZXUgZHUgcGx1cyBvdSBtb2lucw=="]
 * Clean More or less Game

$"userInput" [int(input(add(add "Entrez un nombre (" ($"try"@)) " essais) : "$"userInput"))] &2   ?(eq ($"try"@) 0) (        &3    ) ?(eq ($"numberFound"@) 1) (       &4    ) &1   ?(eq ($"secretNumber"@) ($"userInput"@)) (        $"numberFound" [1]        &~    ) (        $"try" [sub @ 1]        ?(gt ($"secretNumber"@) ($"userInput"@)) ( print "C'est plus !" ) (           print "C'est moins !" )       &~    )    print "Looser" %   print(add(add "Winner en " (sub 6 ($"try"@))) " essais") %