\lstdefinestyle{haskell}{%
	language=Haskell,
	deletekeywords={%
		True,False,%
		Bool,Int,Integer,Float,Double,String,%
		Maybe,Nothing,Just,%
		zip,length,Show,show,Num,Eq,print,%
		id},
	morekeywords={forall},
	literate=%
		{\_}{{\raisebox{.15ex}{\_}}}1
		{~}{{\raisebox{-.6ex}{\textasciitilde}}}1
		{\\}{{$\lambda\:$}}1
		{->}{{$\shortrightarrow$}}2
		{<-}{{$\shortleftarrow$}}2
		{=>}{{$\Rightarrow$}}2
		{<=}{{$\Leftarrow$}}2
		{'}{{`}}1
		{...}{{$\cdots$}}1 %chktex 11
}
