Hatemath

hatemath is an esoteric programming language that was created by Saketh Suresh in 2018. The language uses 8 commands, 1 for printing, 3 for telling the type of variable and the other 4 for manipulating the variable.
== How it works ==
hatemath works with only one variable called X. The 4 commands for the manipulation of X depend on its type.
== Commands ==
The 8 commands used in hatemath are:
Command	Description
[ 	sets the type of X to a Nonevalue (there are no operations for this type of variable)
< 	sets the type of X to a character with default value being ' '
> 	sets the type of X to an integer with default value being 0
+ 	increments X by 1 if the type of X is an integer
- 	decrements X by 1 if the type of X is an integer
* 	moves 1 character forward if the type of X is a character (eg. ' ' -> 'a' -> 'b' and so on)
/ 	moves 1 character backward if the type of X is a character (eg. 'a' -> ' ' -> 'z' and so on)
] 	prints the current value of X
Note: In hatemath the whole code is written in one line.
== Examples ==
=== A simple program that prints "6 abb" ===
 [>++++++]<]*]*]]
=== Hello, World! ===
 [<********]///]*******]]***]<]////]////////]***]//////]////////]
== Python 3 interpreter ==
 import sys
 code = ""
 while code != "q":
 	code = input()
 	for a in code:
 		if a == "[":
 			x = None
 		if a == ">":
 			x = 0
 		if a == "+":
 			x += 1
 		if a == "-":
 			x -= 1
 		if a == "]":
 			sys.stdout.write(str(x))
 		if a == "<":
 			x = " "
 		if a == "*":
 			if x == " ":
 				x = "a"
 			elif x == "a":
 				x = "b"
 			elif x == "b":
 				x = "c"
 			elif x == "c":
 				x = "d"
 			elif x == "d":
 				x = "e"
 			elif x == "e":
 				x = "f"
 			elif x == "f":
 				x = "g"
 			elif x == "g":
 				x = "h"
 			elif x == "h":
 				x = "i"
 			elif x == "i":
 				x = "j"
 			elif x == "j":
 				x = "k"
 			elif x == "k":
 				x = "l"
 			elif x == "l":
 				x = "m"
 			elif x == "m":
 				x = "n"
 			elif x == "n":
 				x = "o"
 			elif x == "o":
 				x = "p"
 			elif x == "p":
 				x = "q"
 			elif x == "q":
 				x = "r"
 			elif x == "r":
 				x = "s"
 			elif x == "s":
 				x = "t"
 			elif x == "t":
 				x = "u"
 			elif x == "u":
 				x = "v"
 			elif x == "v":
 				x = "w"
 			elif x == "w":
 				x = "x"
 			elif x == "x":
 				x = "y"
 			elif x == "y":
 				x = "z"
 			elif x == "z":
 				x = " "
 
 		if a == "/":
 			if x == " ":
 				x = "z"
 			elif x == "z":
 				x = "y"
 			elif x == "y":
 				x = "x"
 			elif x == "x":
 				x = "w"
 			elif x == "w":
 				x = "v"
 			elif x == "v":
 				x = "u"
 			elif x == "u":
 				x = "t"
 			elif x == "t":
 				x = "s"
 			elif x == "s":
 				x = "r"
 			elif x == "r":
 				x = "q"
 			elif x == "q":
 				x = "p"
 			elif x == "p":
 				x = "o"
 			elif x == "o":
 				x = "n"
 			elif x == "n":
 				x = "m"
 			elif x == "m":
 				x = "l"
 			elif x == "l":
 				x = "k"
 			elif x == "k":
 				x = "j"
 			elif x == "j":
 				x = "i"
 			elif x == "i":
 				x = "h"
 			elif x == "h":
 				x = "g"
 			elif x == "g":
 				x = "f"
 			elif x == "f":
 				x = "e"
 			elif x == "e":
 				x = "d"
 			elif x == "d":
 				x = "c"
 			elif x == "c":
 				x = "b"
 			elif x == "b":
 				x = "a"
 			elif x == "a":
 				x = " "
== External resources ==
* hatemath implementation in Haskell 
Category:2018
Category:Implemented
Category:Languages
Category:Output only
Category:Total
Category:Unusable for programming