2019/05/16 by Runhang Li, Jeremy Yallop
Computer Science · #cs.PL
paper · pdf · doi:10.4204/eptcs.294.1
published as EPTCS 294, 2019, pp. 1-14 · In Proceedings ML 2017, arXiv:1905.05909
arxiv created 2019/05/16 · arxiv updated 2019/05/17
We propose a harmonious extension of OCaml's 'open' construct. OCaml's existing construct 'open M' imports the names exported by the module 'M' into the current scope. At present 'M' is required to be the path to a module. We propose extending 'open' to instead accept an arbitrary module expression, making it possible to succinctly address a number of existing scope-related difficulties that arise when writing OCaml programs.