struct

    
    (** Compiler to SmartPrint.t displayable pseudo code, see the smart-print library. *)

    module To_display = Biokepi_pipeline_edsl.To_display

    
    (** Compiler to Ketrew workflows using the Biokepi.Tools implementations.

The compiler is itself a functor, see the example:

          let module Workflow_compiler =
            Biokepi.EDSL.Compile.To_workflow.Make(struct
              let processors = 42
              let work_dir = "/work/dir/"
              let machine =
                Biokepi.Setup.Build_machine.create
                  "ssh://example.com/tmp/KT/"
            end)
          in
          let module Ketrew_pipeline_1 = Pipeline_1(Workflow_compilerin
        

*)


    module To_workflow = Biokepi_pipeline_edsl.To_workflow

    
    (** Compiler to JSON (Yojson.Basic.t). *)

    module To_json : Semantics.Bioinformatics_base
      with type 'a repr = var_count: int -> Yojson.Basic.json
       and
       type 'a observation = Yojson.Basic.json =
      Biokepi_pipeline_edsl.To_json

    
    (** Compiler to DOT graph descriptions. *)

    module To_dot : Semantics.Bioinformatics_base
      with 
       type 'a observation = SmartPrint.t =
      Biokepi_pipeline_edsl.To_dot
  end