Desidero essere in grado di definire un tipo (ad esempio my_type) che possa identificare le hashtable con stringhe come chiavi e mappato a valori interi.
Così, ho provatoIdentificazione di hash come tipo definito dall'utente in OCaml
# type my_type = (string, int) Hashtbl.t;;
Ma, quando provo
# let a = Hashtbl.create 100;;
val a : ('_a, '_b) Hashtbl.t = <abstr>
# Hashtbl.add a "A" 12;;
- : unit =()
# a;;
- : (string, int) Hashtbl.t = <abstr>
Gli spettacoli ultima linea (string, int) Hashtbl.t = sommario invece di my_type. Come posso assicurarmi che mi dia il tipo di hashtable come my_type?
Questo non è un ottimo suggerimento: non si tratta di sottotitolare qui, ma semplicemente di due tipi uguali. La coercizione non ha molto senso, come farebbe un'annotazione di tipo semplice, e in effetti anche un'annotazione di tipo è di scarsa utilità. – gasche
Hai ragione, ho dimenticato l'annotazione del tipo .. Questo non è davvero un buon consiglio .. – octref