Module BusScheme
In: lib/bus_scheme.rb
lib/cons.rb
lib/eval.rb
lib/lambda.rb
lib/parser.rb
lib/primitives.rb
BusSchemeError LoadError IncompleteError ArgumentError EvalError AssertionFailed ParseError StandardError Traceable Lambda Cons BusScheme dot/f_3.png

Methods

Classes and Modules

Class BusScheme::ArgumentError
Class BusScheme::AssertionFailed
Class BusScheme::BusSchemeError
Class BusScheme::Cons
Class BusScheme::EvalError
Class BusScheme::IncompleteError
Class BusScheme::Lambda
Class BusScheme::LoadError
Class BusScheme::ParseError

Constants

VERSION = "0.7.5"
PROMPT = '> '
INCOMPLETE_PROMPT = ' ... '
LOAD_PATH = ["#{File.dirname(__FILE__)}/scheme/", File.expand_path('.')]
SYMBOL_TABLE = {}

Public Class methods

TODO: expose load path in scheme

Call a function with given args

Eval a form passed in as an array

Parse a string, then eval the result

Load a file if on the load path or absolute

For stack traces

Turn an input string into an S-expression

Nest a list from a 1-dimensional list of tokens

Turn a list of tokens into a properly-nested array

Take a token off the input string and return it

Read-Eval-Print-Loop

Split an input string into lexically valid tokens

Public Instance methods

[Validate]