struct
(** The definition of the Embedded DSL *) |
module type Semantics = Biokepi_pipeline_edsl.Semantics.Bioinformatics_base
(** Various compilers to “interpret” the EDSL. *) |
module Compile = 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:
*) |
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
(** Transformations on the EDSL. *) |
module Transform = struct
(** Apply as much EDSL functions as possible to their arguments (including
list_map ). *) |
module Apply_functions = Biokepi_pipeline_edsl.Transform_applications.Apply
end
(** Library of reusable pieces of pipeline. *) |
module Library = Biokepi_pipeline_edsl.Pipeline_library
end