ExLisp.Loop (exlisp v0.1.4)

Copy Markdown

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).

Summary

Functions

Expands an extended loop AST into equivalent Lisp AST.

Determines whether a list of AST nodes represents an extended loop form.

Functions

collect_vars_in_spec(node)

destructure_var_spec(var_node, val_expr)

expand(nodes)

Expands an extended loop AST into equivalent Lisp AST.

extended_loop?(nodes)

Determines whether a list of AST nodes represents an extended loop form.

is_nil_node?(node)

is_simple_var?(node)

kw_name(atom)