In this recipe, we will look at alternative representations of string. The string is a list of Char and is not an efficient implementation. The text and bytestring packages are the most popular packages for alternative and efficient string implementations. While text implements unicode characters, bytestring is good for binary data. In this recipe, we will work with these data types and convert them into each other, and also explore a GHC extension for strings.