Portability | portable |
---|---|
Stability | experimental |
Maintainer | github.com/justinethier |
Safe Haskell | Safe-Infered |
This module contains code for working with Scheme variables.
- printEnv :: Env -> IO String
- copyEnv :: Env -> IO Env
- extendEnv :: Env -> [((String, String), LispVal)] -> IO Env
- findNamespacedEnv :: Env -> String -> String -> IO (Maybe Env)
- isBound :: Env -> String -> IO Bool
- isRecBound :: Env -> String -> IO Bool
- isNamespacedBound :: Env -> String -> String -> IO Bool
- isNamespacedRecBound :: Env -> String -> String -> IO Bool
- getVar :: Env -> String -> IOThrowsError LispVal
- getNamespacedVar :: Env -> String -> String -> IOThrowsError LispVal
- setVar, defineVar :: Env -> String -> LispVal -> IOThrowsError LispVal
- setNamespacedVar :: Env -> String -> String -> LispVal -> IOThrowsError LispVal
- defineNamespacedVar :: Env -> String -> String -> LispVal -> IOThrowsError LispVal
Documentation
extendEnv :: Env -> [((String, String), LispVal)] -> IO EnvSource
Extend given environment by binding a series of values to a new environment.
isRecBound :: Env -> String -> IO BoolSource
Determine if a variable is bound in the default namespace, in this env or a parent
isNamespacedBound :: Env -> String -> String -> IO BoolSource
Determine if a variable is bound in a given namespace
getVar :: Env -> String -> IOThrowsError LispValSource
Retrieve the value of a variable defined in the default namespace
getNamespacedVar :: Env -> String -> String -> IOThrowsError LispValSource
Retrieve the value of a variable defined in a given namespace
setVar, defineVar :: Env -> String -> LispVal -> IOThrowsError LispValSource
Bind a variable in the default namespace
Set a variable in the default namespace
setNamespacedVar :: Env -> String -> String -> LispVal -> IOThrowsError LispValSource
Set a variable in a given namespace
defineNamespacedVar :: Env -> String -> String -> LispVal -> IOThrowsError LispValSource
Bind a variable in the given namespace