functoria icon indicating copy to clipboard operation
functoria copied to clipboard

Metafunctoria

Open Drup opened this issue 10 years ago • 0 comments

The idea is to use metaocaml to make the configuration engine available at runtime and be able to trigger a re-emission of the initialization code on some event.

There are lots of issues with this:

  • metaocaml doesn't handle modules at all.
  • metaocaml doesn't handle toplevel bindings. We use bindings for two things:
    • main.ml : this could be avoided completely, since it's not actually exported, not a blocker
    • Keys: In this case, we really want the bindings to be available to the rest of the modules. A solution, assuming that the first point is solved, would be to use "Keys as a module" instead of the current global Bootvar_gen module.
  • In metaocaml, the meta level need in theory to be linked with the dependencies of the sublevel. A trick could be to use similar method than module aliases, where the typechecker doesn't look at a module until it's needed for typechecking.
  • There are lot's of typing issues, in particular related to the connect function. Linked to #7

cc @avsm

Drup avatar Sep 15 '15 23:09 Drup