いまだに forall がよく分からん。

f :: T1 a => T2 a
g :: forall a. T1 a => T2 a

関数 f と g の違いって何?