Ah ! I understand what’s happening now
Didn’t read your tree properly
When you have a file in your directory that has the same name as your library (booleanFormulae here), dune creates a library from this file.
Meaning, in booleanFormulae.ml you need:
module Parser = Parser
and in your booleanFormulae.mli you need
module Parser : sig
...
end