tiny_languages.scheme
Scheme_eval
tiny_languages.basic
tiny_languages.formula
tiny_languages.hypertalk
tiny_languages.javascript
tiny_languages.lang_asm
tiny_languages.lang_c
tiny_languages.lang_css
tiny_languages.lang_html
tiny_languages.lang_json
tiny_languages.lang_jsonnet
tiny_languages.lang_ocaml
tiny_languages.lisp
tiny_languages.pascal
tiny_languages.postscript
tiny_languages.scratch
tiny_languages.sexpr
tiny_languages.smalltalk
type state
type world = {
init : Scheme.t;
handlers : (string * Scheme.t) list;
span : Sexpr.span;
}
type error = {
message : string;
at : Sexpr.span option;
type outcome =
| Done of Scheme.t
| Running
| Failed of error
| World of world
val create : unit -> state
val start : state -> Scheme.expr -> state
val run : ?fuel:int -> state -> outcome * state
val resume : state -> Scheme.t -> state
val call : ?fuel:int -> state -> Scheme.t -> Scheme.t list -> (Scheme.t, error) result * state
val take_output : state -> string * state
val eval_all : ?fuel:int -> state -> string -> (Scheme.t, error) result * state
val steps : state -> int
val defined : state -> string list