package rfsm

  1. Overview
  2. Docs
On This Page
  1. Static evaluators
Legend:
Library
Module
Module type
Parameter
Class
Class type
type expr = Syntax.expr

The type of guest-level expressions

type value = Value.t

The type of guest-level values

exception Non_static_value of expr

Static evaluators

val eval_fn : string list -> expr -> value

eval_fn args body should return the value representing a function taking a list of arguments args and returning the value denoted by expression body. For guest languages not supporting functions (such as the core one, for example), the return value is undefined.

val eval : expr -> value

eval e should return the value corresponding to the static evaluation of expression e. This should function should raise Non_static_value is e cannot be evaluated statically (typically, if is not a litteral constant).