I have a problem in understanding the exact difference between modules and namespaces in F# and when using one or the other. Well, they both are considered in order to incapsulate code and define a hierarchy to get our projects well organized.
Modules have many features: they can contain values, types of all kinds and these elements can be defined public
, protected
or internal
too.
But, when using modules?
I understood also that modules are finally mapped as classes in MSIL (Intermediate Language). So a module is a class, is a type.... My doubts' magnitude improve....
When using modules??? Are they useful?
D. Syme also argues that modules are extensible, so I assume they are like namespaces from this point of view.
I cannot understand the reason to use them.
Thankyou