Как написать взаимно рекурсивные функции внутри привязки let в SML?

Я хотел бы сделать что-то вроде этого:

fun f () =
    let
      fun a() = b()
    and
      fun b() = a()
    in
      ()
    end

где a и b — осмысленные взаимно рекурсивные функции. Однако это дает:

Error: syntax error: replacing  AND with  SEMICOLON

Есть ли способ сделать это?

6
задан user1339898 17 April 2012 в 22:21
поделиться