OCaml类型(int选项列表)列表

use*_*314 1 ocaml types list

我正在尝试创建一个类型(int选项列表)列表变量.

让blah :( int选项列表)list = [30左右; 约77] :: [2]; 有些3] ;;

但是,这不是类型检查.我想我真的迷失在语法上.

gsg*_*gsg 6

你几乎得到了它:

let blah : (int option list) list = [Some 30 ; Some 77]::[[Some 2] ; [Some 3]]
Run Code Online (Sandbox Code Playgroud)

或者,更可读:

let blah = [[Some 30; Some 77]; [Some 2]; [Some 3]]
Run Code Online (Sandbox Code Playgroud)

类型问题在于:::左手侧和右手侧的元素有不同的类型.

  • 或者更确切地说[大约30; 约77] :: [2]; 有的3] :: []` (3认同)