    {-# LANGUAGE Haskell2010 #-}
    module Literals where

    str :: String
    str :: String
    str = String
    "str literal"

    num :: Num a => a
    num :: forall a. Num a => a
    num = a
    0 a -> a -> a
    forall a. Num a => a -> a -> a
    + a
    1 a -> a -> a
    forall a. Num a => a -> a -> a
    + a
    1010011 a -> a -> a
    forall a. Num a => a -> a -> a
    * a
    41231 a -> a -> a
    forall a. Num a => a -> a -> a
    + a
    12131

    frac :: Fractional a => a
    frac :: forall a. Fractional a => a
    frac = a
    42.0000001

    list :: [[[[a]]]]
    list :: forall a. [[[[a]]]]
    list = [[], [[]], [[[]]]]

    pair :: ((), ((), (), ()), ())
    pair :: ((), ((), (), ()), ())
    pair = ((), ((), (), ()), ())