Module scmi_env

April 22, 2013 ยท View on GitHub

Scheme interpreter environment resource

. __Authors:__ Joseph Wayne Norton ([`norton@alum.mit.edu`](mailto:norton@alum.mit.edu)).

Data Types

env()

abstract datatype: env()

val()


val() = scm_obj()

var()


var() = scm_symbol()

Function Index

define_variable/3
extend/3
is_immutable/1
is_resource/1
lookup_variable/2
make_immutable/1
notify_when_destroyed/2
notify_when_destroyed/3
safe_lookup_variable/2
set_variable/3
the_empty/0

Function Details

define_variable/3


define_variable(Var::var(), Val::val(), X3::env()) -> true



extend/3


extend(Vars::[var()], Vals::[val()], X3::env()) -> val()



is_immutable/1


is_immutable(X1::env()) -> boolean()



is_resource/1


is_resource(Term::term()) -> boolean()



lookup_variable/2


lookup_variable(Var::var(), Env::env()) -> val()



make_immutable/1


make_immutable(X1::env()) -> true



notify_when_destroyed/2


notify_when_destroyed(Msg::term(), Env::env()) -> true



notify_when_destroyed/3


notify_when_destroyed(Pid::pid(), Msg::term(), X3::env()) -> true



safe_lookup_variable/2


safe_lookup_variable(Var::var(), X2::env()) -> val()



set_variable/3


set_variable(Var::var(), Val::val(), X3::env()) -> true



the_empty/0


the_empty() -> env()