Skip to content

Instantly share code, notes, and snippets.

@ironhouzi
Created March 30, 2018 14:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ironhouzi/1e458ccaa7af1beed31caa3cb79f2cd7 to your computer and use it in GitHub Desktop.
Save ironhouzi/1e458ccaa7af1beed31caa3cb79f2cd7 to your computer and use it in GitHub Desktop.
import Data.Char
data Letter = Ka
| Kha
| Ga
| Nga
| Ca
| Cha
| Ja
| Nya
| Ta
| Tha
| Da
| Na
| Pa
| Pha
| Ba
| Ma
| Tsa
| Tsha
| Dza
| Wa
| Zha
| Za
| Achung
| Ya
| Ra
| La
| Sha
| Sa
| Ha
| A
| I
| U
| E
| O
deriving (Eq, Ord, Show, Read, Bounded, Enum)
letter :: Letter -> String
letter Achung = "'"
letter A = "a"
letter I = "i"
letter U = "u"
letter E = "e"
letter O = "o"
letter l = reverse (tail (reverse (map toLower (show l))))
letter xs = map toLower ([x | x <- (show xs), x /= 'a'])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment