Lisp
Included with Lifetime
$97 forever
Execute these commands after EVERY implementation (see AGENT_AUTOMATION module for full workflow).
languageslanguageslanguage
What this skill does
<!-- LISP:START --> # Common Lisp Project Rules ## Agent Automation Commands **CRITICAL**: Execute these commands after EVERY implementation (see AGENT_AUTOMATION module for full workflow). ```bash # Complete quality check sequence: sbcl --eval '(ql:quickload :sblint)' --eval '(sblint:run-lint "src/")' # Linting sbcl --load tests/run-tests.lisp # All tests sbcl --eval '(asdf:make :your-system)' # Build with ASDF ``` ## Common Lisp Configuration **CRITICAL**: Use SBCL 2.3+ or CCL with ASDF3 and modern tooling. - **Implementation**: SBCL 2.3+ (recommended) or CCL - **Build System**: ASDF3 - **Testing**: FiveAM or Prove - **Linter**: sblint ### System Definition (your-system.asd) ```lisp (defsystem "your-system" :description "Your system description" :version "0.1.0" :author "Your Name <[email protected]>" :license "MIT" :depends-on (:alexandria :cl-ppcre :str) :components ((:module "src" :components ((:file "package") (:file "main" :depends-on ("package"))))) :in-order-to ((test-op (test-op "your-system/tests")))) (defsystem "your-system/tests" :depends-on ("your-system" "fiveam") :components ((:module "tests" :components ((:file "package") (:file "main-tests" :depends-on ("package"))))) :perform (test-op (o c) (symbol-call :fiveam :run! :your-system-tests))) ``` ## Code Quality Standards ### Mandatory Quality Checks **IMPORTANT**: These commands MUST match your GitHub Actions workflows! ```bash # Pre-Commit Checklist (MUST match .github/workflows/*.yml) # 1. Lint (matches workflow) sblint your-system.asd # 2. Load system (check for errors - matches workflow) sbcl --non-interactive --load your-system.asd \ --eval '(ql:quickload :your-system)' \ --eval '(quit)' # 3. Run tests (matches workflow) sbcl --non-interactive \ --eval '(ql:quickload :your-system/tests)' \ --eval '(asdf:test-system :your-system)' \ --eval '(quit)' # If ANY fails: ❌ DO NOT COMMIT - Fix first! ``` ### Testing Example (FiveAM) ```lisp (in-package :your-system/tests) (def-suite your-system-tests :description "Main test suite") (in-suite your-system-tests) (test process-data-test "Test data processing" (is (equal '(2 4 6) (process-data '(1 2 3)))) (is (null (process-data '()))) (signals error (process-data nil))) (test validate-input-test "Test input validation" (is-true (validate-input "test")) (is-false (validate-input ""))) ``` <!-- LISP:END -->
Related in languages
csharp-expert
IncludedExpert-level C# development with .NET 8+, ASP.NET Core, LINQ, async/await, and enterprise patterns
languages
java-expert
IncludedExpert-level Java development with Java 21+ features, Spring Boot, Maven/Gradle, and enterprise best practices
languages
pcl-expert
IncludedExpert in Persona Control Language (PCL) - language design, compiler architecture, runtime systems, and ecosystem development
languages
php-expert
IncludedExpert-level PHP development with PHP 8+, Laravel, Composer, and modern best practices
languages
rust-expert
IncludedExpert-level Rust development with ownership, lifetimes, async, error handling, and production-grade patterns
languages
go-expert
IncludedExpert-level Go development with Go 1.22+ features, concurrency, standard library, and production-grade best practices
languages