Interactive Common Lisp

A modern REPL experience with syntax highlighting, auto-completion, data visualization, and AI integration

Works with SBCL, CCL, ECL, ABCL, Clasp, and Roswell

CI Release License: MIT
$ icl
;; ICL - Interactive Common Lisp
CL-USER> (defun greet (name)
           (format nil "Hello, ~A!" name))
=> GREET
CL-USER> (greet "Lisper")
=> "Hello, Lisper!"
CL-USER> โ–Œ

Three Ways to REPL

Use ICL however you prefer

โŒจ

Terminal

Terminal Demo

Syntax highlighting, paredit, tab completion, and interactive object inspector

icl
๐ŸŒ

Browser

Browser Demo

Package browser, symbol inspector, class hierarchies, and data visualization

icl -b
๐Ÿ“

Emacs

Emacs Demo

Integrates with SLY/SLIME for synchronized browser visualizations

M-x icl

Flame Graph Profiling

Profile any expression and explore the results in an interactive Speedscope visualization. Identify performance bottlenecks with Time Order, Left Heavy, and Sandwich views.

,flame (my-expensive-function)
Flame Graph Demo

Features

๐ŸŽจ

Syntax Highlighting

Colorized input with matching parentheses

๐Ÿ”ง

Paredit Mode

Structural editing with balanced parens

๐Ÿ“Š

Data Visualization

Hash tables, classes, Vega-Lite, Mermaid

๐Ÿ”ฅ

Flame Graphs

Interactive Speedscope profiling

๐Ÿค–

AI Integration

Explain code with Claude, Gemini, Codex

๐Ÿ”

Object Inspector

TUI for exploring complex objects

๐Ÿ“ฆ

Multiple Lisps

SBCL, CCL, ECL, ABCL, Clasp, Roswell

๐Ÿ”ฌ

Disassembly View

Visualize function machine code

Installation

Pre-built Binaries

Download RPM, DEB, or Windows installers

Download โ†’

Roswell

ros install atgreen/icl

Build from Source

git clone https://github.com/atgreen/icl.git
cd icl && ocicl install && make