<= =>
Observações de Funções
x = ( observe "last" :: Observing ([Int] -> Int) ) last
ex7 = printO (x [1..4])			      
-- last
  { \ (_ : _ : _ : 4 : [])  -> 4
  }         

dobros :: [Int] -> [Int]
dobros =  observe "map (*2)" map (*2)
ex8 = printO (dobros [1..5])
-- map (*2)
  { \ { \ 1  -> 2
      , \ 2  -> 4
      , \ 3  -> 6
      , \ 4  -> 8
      , \ 5  -> 10
      } (1 : 2 : 3 : 4 : 5 : [])
       -> 2 : 4 : 6 : 8 : 10 : []
  }