Browse thread
[Caml-list] recursive modules redux, & interface files
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Brian Rogoff <bpr@b...> |
| Subject: | Re: [Caml-list] recursive modules redux, & interface files |
On Sat, 24 Mar 2001, Fergus Henderson wrote: > On 22-Mar-2001, Brian Rogoff <bpr@best.com> wrote: > > I haven't found in > > my own programming a compelling case where module spanning mutually > > recursive function definitions were an issue. Is it possible to produce a > > reasonably sized example, Hendrik (or Chris)? > > In the Mercury compiler, we have made significant use of module spanning > mutually recursive procedures. For example, the code generator > is split among several modules, roughly for each language construct > (e.g. ite_gen handles code generation for if-then-elses, > switch_gen handles code generation for switches, etc.), > and since if-then-elses can contain switches (and vice versa), > the procedures in these modules are mutually recursive. Interesting. A similar example occurred in a discussion in comp.lang.ml between Matthias Blume and Greg Morrissett (concerning datatypes not functions) where MB argued as an SML/NJ maintainer that such recurrences were best placed in the same module and GM thought it best that they be split even though recursive. Clearly I lean towards MB's view on this though I take it that there are other schools of thought. What is your criteria for splitting the functions into different modules? -- Brian ------------------- To unsubscribe, mail caml-list-request@inria.fr. Archives: http://caml.inria.fr