Gabriel,
| Val_table of (value, value) Hashtbl.t
It took me two days to understand that this actually solved the problem
because it fulfils type erasure and induction on dimension, just like
functions.
Actually, that's the type of a reified curried function value - value -
value - ...
What about hash tables ?
| Val_table of (value, value) Hashtbl.t
If you have caml closures in your values (not in Val_closure but in
Val_primitive), it is maybe not appropriate to use the default hash function
that would choke on them. You should rather define your own hashing function
--but
Caml-list,
I have to write an interpreter for a language that has arrays explicitly
indexed by anything that can be sequential (list, range, set)
{string} airports = {ATL, JFK};
range index = 1 .. 2;
tuple recordAirport { airport : string; id : int }
{recordAirport}