I stumbled across this problem in F#. Suppose, I want to declare two types that reference each other:
type firstType =
| T1 of secondType
//................
type secondType =
| T1 of firstType
//................
How do I do that, so the compiler does not generate an error?