API Reference exlisp v#0.1.2

Copy Markdown

Modules

Module responsible for determining ExLisp built-in functions and compiling them to Erlang Abstract Format.

Documentation for ExLisp.

Lightweight loader for Common Lisp ASDF (Another System Definition Facility). Parses defsystem definitions in .asd files, resolves dependencies, and loads components (.lisp files) in sequential order.

Implementation module for Common Lisp (SBCL-compliant) built-in functions and predicates.

ANSI Common Lisp format control string engine for ExLisp. Supports

ExLisp CLI entry point. Starts an IEx-based Lisp REPL when launched with the exlisp command. Also executes compilation to BEAM modules when files are specified.

Common Lisp Object System (CLOS) implementation for ExLisp. Supports

ExLisp closure and variadic function struct. Wraps functions with lambda list keywords like &optional, &rest, &key, enabling accurate argument dispatch.

Module for compiling Lisp source code into BEAM bytecode (.beam files). Compiled modules can be used as standard Elixir / Erlang modules.

Common Lisp Condition and Restart system for ExLisp. Supports

Module managing global environments (variables and functions) for ExLisp. Uses :persistent_term to hold and reference values and functions across sessions with extreme speed.

Code formatter for Common Lisp.

Hex.pm client module. Provides functionality to dynamically download, compile, and load Hex.pm libraries from within the REPL or Lisp scripts.

Helper module for tracking standard output during REPL evaluation and outputting a newline (fresh-line) if no trailing newline exists at the end of evaluation.

Custom S-expression parser for ExLisp. Performs lexical analysis and parsing (S-expression generation) of Lisp without external dependencies or regular expressions.

Lisp list struct for REPL display. Implements the Inspect protocol to output in Common Lisp format such as (A B C) or (EXPT 2 3).

Parser and transpiler for Common Lisp Extended Loop syntax. Parses loop clauses such as (loop for i below 5 sum i) and expands into standard Lisp AST (tail-recursive functions with block, let*, labels).

Common Lisp-style macro expansion system. Provides destructuring-bind, backquote expansion, and macroexpand.

ANSI Common Lisp Package System for ExLisp. Supports

IEx parser. Inspects nested parentheses of input strings and generates AST that invokes ExLisp.eval/1 once top-level parentheses are closed.

ANSI Common Lisp Pathnames implementation for ExLisp. Supports

Quicklisp client module. Fetches and manages Quicklisp dist metadata for Common Lisp, and handles automatic downloading, unpacking, dependency resolution, and loading of third-party libraries via ql:quickload.

Struct representing rational numbers (fractions) in ExLisp.

Module to split Lisp source code into top-level S-expressions (per expression).

ANSI Common Lisp Readtable implementation. Supports readtable, copy-readtable, readtablep, set-macro-character, get-macro-character, set-dispatch-macro-character, get-dispatch-macro-character, set-syntax-from-char, and readtable-case.

ANSI Common Lisp Streams implementation for ExLisp. Supports

Lisp symbol struct for REPL display. Implements the Inspect protocol to output symbol names without colons or quotes.

ANSI Common Lisp Type System implementation for ExLisp. Supports primitive types, compound type specifiers, deftype user-defined types, typep, subtypep, and type expansion.

Generates Erlang Abstract Format from ExLisp AST, compiles it to BEAM binaries, and executes it (with interactive REPL).