One of the most common complaints about F# is that it requires code to be in dependency order. That is, you cannot use forward references to code that hasn't been seen by the compiler yet.
In this series, I discuss dependency cycles, why they are bad, and how to get rid of them.
- Cyclic dependencies are evil. Cyclic dependencies: Part 1.
- Refactoring to remove cyclic dependencies. Cyclic dependencies: Part 2.
- Cycles and modularity in the wild. Comparing some real-world metrics of C# and F# projects.