Module: Campa

Defined in:
lib/campa.rb,
lib/campa/cli.rb,
lib/campa/list.rb,
lib/campa/node.rb,
lib/campa/repl.rb,
lib/campa/evaler.rb,
lib/campa/lambda.rb,
lib/campa/reader.rb,
lib/campa/symbol.rb,
lib/campa/context.rb,
lib/campa/lisp/eq.rb,
lib/campa/printer.rb,
lib/campa/version.rb,
lib/campa/language.rb,
lib/campa/lisp/car.rb,
lib/campa/lisp/cdr.rb,
lib/campa/core/load.rb,
lib/campa/core/test.rb,
lib/campa/lisp/atom.rb,
lib/campa/lisp/cadr.rb,
lib/campa/lisp/cond.rb,
lib/campa/lisp/cons.rb,
lib/campa/lisp/core.rb,
lib/campa/core/print.rb,
lib/campa/lisp/defun.rb,
lib/campa/lisp/label.rb,
lib/campa/lisp/quote.rb,
lib/campa/error/arity.rb,
lib/campa/lisp/list_fn.rb,
lib/campa/core/print_ln.rb,
lib/campa/error/reserved.rb,
lib/campa/lisp/lambda_fn.rb,
lib/campa/error/not_found.rb,
lib/campa/execution_error.rb,
lib/campa/core/test_report.rb,
lib/campa/error/parameters.rb,
lib/campa/error/resolution.rb,
lib/campa/error/invalid_number.rb,
lib/campa/error/not_a_function.rb,
lib/campa/error/illegal_argument.rb,
lib/campa/error/missing_delimiter.rb

Defined Under Namespace

Modules: Core, Error, Lisp Classes: Cli, Context, Evaler, ExecutionError, Lambda, Language, List, Node, Printer, Reader, Repl, Symbol

Constant Summary collapse

CR_REGEX =

caar, cddr, cadr, but not car or cdr

/\Ac((ad)|(a|d){2,})r$$/
SYMBOL_OUT =
Symbol.new("__out__")
SYMBOL_LAMBDA =
Symbol.new("lambda")
SYMBOL_QUOTE =
Symbol.new("quote")
VERSION =
"0.1.2"

Class Method Summary collapse

Class Method Details

.rootObject



16
17
18
# File 'lib/campa.rb', line 16

def self.root
  @root ||= Pathname.new File.expand_path(__dir__)
end