On Tue, Sep 24, 2013 at 5:15 PM, yi lu <zhiwudazhanjiangshi@gmail.com> wrote:
Prelude> :i ShowS
type ShowS = String -> String     -- Defined in `GHC.Show'

It is a type of a function? I cannot understand this type, and don't know how to create functions of this type.

When you say "cannot" you probably mean "do not". Among the reasons are this lack of ability is highly transient. And this transience is highly dependent on the steps you take to change this.

There are heaps of freely available intro material on this. What have you looked at?

-- Kim-Ee