What is the F# answer to Haskell's typeclasses and OCaml's functors?
<p>It is important to be able to associate a type with a bundle of functions that know how to operate on that type and know its specifics. Modules in F# are intrinsically static, they can be loaded but cannot be used instantiated and parametrized by values and types, let alone passed as parameters and returned from functions.</p>

<p>Both Haskell and OCaml have although very different but nonetheless very useful mechanism that allows such customizations.</p>

<p>What does F# have?</p>