-
Notifications
You must be signed in to change notification settings - Fork 94
Dev meeting 2020 09 17
- @jonludlam
- @trefis
- @Julow
- @Drup
-
@jonludlam to find out status of dune build @doc supporting external libs -- Not done
-
@jonludlam to post on discuss about plans for replacing ocamldoc plugins -- Not done
- need CI working in the short term, @Jules is going to do whatever is easiest to get either Travis or Ocaml-CI back up and running.
- https://github.com/ocurrent/ocaml-ci/pull/244 is then less urgent
The problem
module type X = sig
module Y : sig
module Z : sig
type t
module Z1 : sig
val x : t
end
end
end
module type Foo = sig
module type A = module type of Y.Z
module type B = module type of struct include Y.Z end
end
end
module Z2 : sig
type t = int
type u
module Z1 : sig
val x : t
val y : t
end
end
module type BBB = X with module Y.Z := Z2
module AAA : BBB
OCaml's expansion of BBB
:
module type BBB =
sig
module Y : sig end
module type Foo =
sig
module type A = sig type t module Z1 : sig val x : t end end
module type B = sig type t = int module Z1 = Z2.Z1 end
end
end
-
intermediate expansions an issue for figuring out when a substitution has been made. We can't rely on a substitution happening in the argument of a
module type of
expression to tell us that one has happened. -
simple tree 'mask' for
module type of
incorrect (difference between module type A and B above). Need to allow module aliases too.
- @Drup to review
PR merged - 'incomplete' in that there is more to do, though what there is is a useful basis for doing new commands.
The more to do:
- remove the combined commands. This is a longer term goal so we don't need to have releases of other tools (dune, odig) before we can use odoc.
- html fragments? nobody really knows what it does! Need to either make it work properly or remove it entirely. Not used by dune or JS internally.
Action: @jonludlam to ask Daniel whether this is being used in odig.
- @trefis asked if the comment parser is still hand-written, which it is. It used to be a Menhir based parser but was replaced with a hand-written one. Altering this to add new syntax is a bit of a barrier, so putting the Menhir one back might be a useful step. There are many tests for the parser, so replacing it could be done with a degree of confidence. @trefis said he might have a go!
This is a blocker for the next release. The draft sketch proposal needs fleshing out with some examples. @jonludlam to drive this.