package zelus
A synchronous language with ODEs
Install
dune-project
Dependency
Authors
Maintainers
Sources
2.1.tar.gz
sha256=cb0f7bacc33a4bb425683e2def67359fcf6d402545a32f7f953c4822a9a01862
md5=83fb886e4b14ce286e7a6eb59248be4b
doc/zelus.zlcompilerlibs/Translate/index.html
Module Translate
val kind : Zelus.kind -> Obc.kind
Translation of the kind
val type_expression : Zelus.type_expression -> Obc.type_expression
Translating type expressions.
val type_of_type_decl : Zelus.type_decl_desc Zelus.localized -> Obc.type_decl
val constr_decl : Zelus.constr_decl -> Obc.constr_decl
val is_mutable : Deftypes.typ -> bool
val type_expression_of_typ : Deftypes.typ -> Obc.type_expression
type env = entry Ident.Env.t
and loop_path = Ident.t list
type code = {
mem : Obc.mentry Misc.State.t;
init : Obc.inst;
instances : Obc.ientry Misc.State.t;
reset : Obc.inst;
step : Obc.inst;
}
val fprint : Format.formatter -> entry Ident.Env.t -> unit
val empty_code : code
val entry_of : Ident.Env.key -> 'a Ident.Env.t -> 'a
Look for an entry in the environment
val immediate : Deftypes.immediate -> Obc.immediate
Translation of immediate values
val constant : Deftypes.constant -> Obc.exp
val state : bool -> Ident.t -> Deftypes.mkind option -> Obc.left_state_value
val left_value_index : Obc.left_value -> Ident.t list -> Obc.left_value
val left_state_value_index :
Obc.left_state_value ->
Ident.t list ->
Obc.left_state_value
val letpat : Obc.pattern -> Obc.exp -> code -> code
Generate the code for the definition of a value
val letvar :
(Ident.t * Obc.is_mutable * Deftypes.typ * Obc.exp option) list ->
Obc.inst ->
Obc.inst
Generate the code for initializing shared variables
val out_of :
Ident.Env.key ->
entry Ident.Env.t ->
Ident.t * Deftypes.typ * Deftypes.tsort * loop_path
val size_of_type : Deftypes.size -> Obc.size
Translate size expressions
val size : Zelus.size -> Obc.size
Translate size expressions
val choose : 'a -> Deftypes.typ -> Obc.exp option
val default : 'a -> Deftypes.typ -> Deftypes.constant option -> Obc.exp option
Computes a default value
val append :
loop_path ->
Deftypes.tentry Ident.Env.t ->
entry Ident.Env.t ->
entry Ident.Env.t
* Obc.mentry Misc.State.t
* (Ident.Env.key * bool * Deftypes.typ * Obc.exp option) list
Extension of an environment
val apply :
Deftypes.kind ->
'a ->
Ident.t list ->
Obc.exp ->
Obc.exp list ->
code ->
Obc.exp * code
Translation of a stateful function application f se1 ... sen e
Translation of expressions under an environment env
val pattern : Zelus.pattern -> Obc.pattern
Patterns
val match_handlers :
entry Ident.Env.t ->
loop_path ->
Zelus.eq list Zelus.block Zelus.match_handler list ->
Obc.inst Obc.match_handler list * code
val local : entry Ident.Env.t -> loop_path -> Zelus.local -> Zelus.exp -> code
val block : entry Ident.Env.t -> loop_path -> Zelus.eq list Zelus.block -> code
val add_mem_vars_to_code :
code ->
Obc.mentry Misc.State.t ->
(Ident.Env.key * Obc.is_mutable * Deftypes.typ * Obc.exp option) list ->
code
val machine :
Obc.name ->
Zelus.kind ->
Obc.pattern list ->
code ->
Deftypes.typ ->
Obc.implementation
val expression : entry Ident.Env.t -> Zelus.exp -> code
val implementation :
Zelus.implementation_desc Zelus.localized ->
Obc.implementation
Translation of a declaration
val implementation_list :
Zelus.implementation_desc Zelus.localized list ->
Obc.implementation list
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>