Module stark::sail[][src]

Expand description

The Structured Augmentation Interchange Language

A custom Lisp dialect for writing STARK

Re-exports

pub use self::core::*;

Modules

core

TODO: Gradual typing; more extensible type system; subtypes

eval
memmgt
parser
queue
stdenv

Structs

SlContextVal

Bundles together an object and associated symbol table for display

Enums

SlErrCode

Basic error codes for Sail faults

Constants

K_CX_DESTR
K_CX_KEY_B
K_CX_KEY_D
K_CX_KEY_E
K_CX_KEY_F
K_CX_KEY_K
K_CX_KEY_L
K_CX_KEY_M
K_CX_KEY_S
K_CX_KEY_U
K_CX_RECRD
K_CX_REDRW
K_CX_RESIZ
K_CX_SHELL
SP_DEF
SP_DO
SP_EVAL
SP_FN
SP_IF
SP_QUOTE
SP_SET
SP_WHILE
SYM_ARRAY
S_CM_RECV
S_CM_SEND
S_CR_RECV
S_CR_SEND
S_CUR_POS
S_ENGINE
S_FRAME
S_FR_DIMS
S_MAIN
S_MR_RECV
S_MR_SEND
S_RNDR
S_T_INTERN
T_ALISMAP
T_ANYVEC
T_BOOL
T_ERR
T_F32
T_F64
T_HASHMAP
T_HASHVEC
T_I8
T_I16
T_I32
T_I64
T_I128
T_MAP
T_NIL
T_PROC
T_PROC_LAMBDA
T_PROC_NATIVE
T_QUEUE_RX
T_QUEUE_TX
T_REF
T_STDVEC
T_STRING
T_SYMBOL
T_T
T_U8
T_U16
T_U32
T_U64
T_U128
T_VECTOR

Functions

arrvec_get_len
arrvec_get_typ
arrvec_init
arrvec_make
arrvec_rplc
context

Create a SlContextVal for display

environment_setup

Set up the symbol table and environment before interpreting Sail code

errcode_get
errcode_init
errcode_make
errcode_set
get_pred_type
get_self_type

Returns the type specifier for a Sail object

insert_native_procs

Insert a slice of native procedures into the symbol table and environment

interpret

Interprets a Sail expression, returning the formatted result

repl

Accepts an input stream and runs a read - evaluate - print loop perpetually

run_file

Runs a Sail file in its own context

set_pred_type
set_self_type

Set the type specifier for a Sail object not of a core type