Scopelang.Scope_to_dcalcSourceval translate_program :
Ast.program ->
Scopelang.Ast.ScopeName.t ->
Dcalc.Ast.program
* Dcalc.Ast.expr Utils.Pos.marked
* Dependency.TVertex.t listUsage translate_program p scope_name returns a tuple (new_program, new_expr, types_list) where new_program is the map of translated scopes, new_expr is the expression that bundles the whole program and whose entry point is the function corresponding to scope_name. Finally, types_list is a list of all types (structs and enums) used in the program, correctly ordered with respect to inter-types dependency.