Reducereduce expressions that are tagged to be static; leave other unchanged
val empty : fun_defsval num : int refval build : 'a Zident.Env.t -> 'a Zident.Env.t * Zident.t Zident.Env.tBuild a renaming from an environment
val rename : Zident.Env.key -> 'a Zident.Env.t -> 'arename a variable
val remove : 'a Zident.Env.t -> 'b Zident.Env.t -> 'b Zident.Env.tRemove entries in venv that are defined in renaming
val type_expression :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
Zelus.type_expression ->
Zelus.type_expressiontype expressions
val size :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
Zelus.size ->
Zelus.sizeval operator :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
Zelus.op ->
Zelus.opRename an operator
val pattern :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
Zelus.pattern ->
Zelus.patternRenaming of patterns
val expression :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
fun_defs ->
Zelus.exp ->
Zelus.exp * fun_defsSimplify an expression.
val static :
Global.value_code Zident.Env.t ->
fun_defs ->
Zelus.exp ->
Zelus.exp * fun_defsval local :
Global.value_code Zident.Env.t ->
(Zident.t Zident.Env.t * fun_defs) ->
Zelus.local ->
Zelus.local * (Zident.t Zident.Env.t * fun_defs)Simplify a local declaration
val equation :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
fun_defs ->
Zelus.eq ->
Zelus.eq * fun_defsSimplify an equation.
val scondpat :
Global.value_code Zident.Env.t ->
Zident.t Zident.Env.t ->
fun_defs ->
Zelus.scondpat ->
Zelus.scondpat * fun_defsval vardec : Zident.t Zident.Env.t -> Zelus.vardec -> Zelus.vardecval block :
Global.value_code Zident.Env.t ->
(Zident.t Zident.Env.t * fun_defs) ->
Zelus.eq list Zelus.block ->
Zelus.eq list Zelus.block * (Zident.t Zident.Env.t * fun_defs)val exp_of_value : fun_defs -> Global.value_code -> Zelus.exp * fun_defsConvert a value into an expression.
val lambda :
Global.value_code Zident.Env.t ->
fun_defs ->
Zelus.funexp ->
Zelus.funexp * fun_defsval implementation_list :
'a ->
Zelus.implementation_desc Zelus.localized list ->
Zelus.implementation_desc Zelus.localized list