Мне любопытно, почему аргументы первичного конструктора должны иметь отступ за открывающей пареню в определении типа, но могут быть с отступом от имени типа при запуске.
type AnIncrediblyLaboriouslyEternallyLongTypeName(arg1, arg2,
arg3, arg4) = //WARNING: Possible incorrect indentation
class end
let x = AnIncrediblyLaboriouslyEternallyLongTypeName(
1, 2, 3, 4) //works
Решение состоит в том, чтобы сделать отступы над левым краем вашего второго монитора:
type AnIncrediblyLaboriouslyEternallyLongTypeName(arg1, arg2,
arg3, arg4) =
class end
Мне интересно, почему правила отличаются в этих двух сценариях.
Это также относится к методам. Я просто выбрал первичные конструкторы в качестве примера.