La recente OCaml 3.12 introduce un feature di moduli imballati prima classe:Quali sono gli usi positivi dei moduli in pacchetto OCaml?
prima classe pacchetti moduli.
- nuovo tipo di espressione tipo, per i moduli contenuti:
(module PT)
- nuovo tipo di espressione, per il confezionamento di un modulo come valore di prima classe:
(module MODEXPR : PT)
.- Nuovo tipo di espressione del modulo, per decomprimere un valore di prima classe come modulo:
(val EXPR : PT)
.- PT è un tipo di pacchetto del modulo
S
oS with type t1 = ... and ... and type tn = ...
(S
si riferisce a un tipo di modulo).
Dove posso trovare esempi motivanti o documenti che utilizzano questa funzione?
Per quanto mi ricordo, Moscow ML, un'implementazione SML che utilizzava caml-light come back-end, è stata la prima a implementare moduli di prima classe. La sezione appropriata della documentazione di Moscow ML si riferisce ai file mosml/examples/modules/{sieve.sml, array.sml, choice.sml, matrix.sml} dalla distribuzione per gli esempi. –
@Pascal Bel riferimento per gli esempi. Questa è l'estensione di Claudio che ho menzionato. – RD1