将Ocaml/Haskell类型定义转换为Haskell:*在定义中

Iva*_*ush -3 f# ocaml haskell

尝试将类型定义从Ocaml/F#转换为Haskell,收到错误:

error: parse error on input `*'
Run Code Online (Sandbox Code Playgroud)

我怎么能纠正代码?

当前的Haskell代码:

data Func sa sb =
    Empty
    | Leaf Int * (sa * sb) List
    | Branch Int * Int * (Func sa sb) * (Func sa sb)
Run Code Online (Sandbox Code Playgroud)

ocaml的:

type ('a,'b)func =
Empty
| Leaf of int * ('a*'b)list
| Branch of int * int * ('a,'b)func * ('a,'b)func;;
Run Code Online (Sandbox Code Playgroud)

F#

type func<'a,'b> =
    | Empty
    | Leaf of int * ('a * 'b) list
    | Branch of int * int * func<'a,'b> * func<'a,'b>
Run Code Online (Sandbox Code Playgroud)

mel*_*ene 8

data Func a b
    = Empty
    | Leaf Int [(a, b)]
    | Branch Int Int (Func a b) (Func a b)
Run Code Online (Sandbox Code Playgroud)