Question

This is probably a silly question, but I want to define a type like this:

type bla = Bla of (string, bla) Hashtbl

However, it gives me a parse error, no matter what I do. In essence, I want Bla to hold hashtable from string to bla again. What am I exactly doing wrong?

Was it helpful?

Solution

Hashtbl is a module. The (non-functorial) type that it defines is ('a, 'b) Hashtbl.t:

# type bla = Bla of (string, bla) Hashtbl.t;;
type bla = Bla of (string, bla) Hashtbl.t
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top