开发者

How can I create a type with multiple parameters in OCaml?

I'm trying to create a type that has multiple type para开发者_运维问答meters. I know how to make a type with one parameter:

type 'a foo = 'a * int

But I need to have two parameters, so that I can parameterize the 'int' part. How can I do this?


The way to do this is:

type ('a, 'b) foo = 'a * 'b

Type parameters aren't curried, so you need to provide them in tuple form as a single parameter. A good example of this is the Hashtbl module:

type ('a, 'b) t 

The type of hash tables from type 'a to type 'b.


# type ('a, 'b) couple = 'a * 'b ;;

For instance...

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜