Signo.AST (Signo v0.0.2)

View Source

AST definitions for the Signo Programming Language.

Summary

Types

Values to which arguments can be applied, aka the head of a procedure.

An expression is a building block for the AST that evaluates down to an value/0.

A reference is a key by which a value/0 can be looked up in the Signo.Env.

t()

A value is an expression that cannot be further simplied by evaluating it.

Types

callable()

@type callable() :: Signo.AST.Lambda.t() | Signo.AST.Builtin.t() | Signo.AST.Macro.t()

Values to which arguments can be applied, aka the head of a procedure.

expression()

An expression is a building block for the AST that evaluates down to an value/0.

ref()

@type ref() :: binary()

A reference is a key by which a value/0 can be looked up in the Signo.Env.

t()

@type t() :: %Signo.AST{expressions: [expression()]}

value()

A value is an expression that cannot be further simplied by evaluating it.

Functions

is_value(node)

(macro)