diff options
| author | Craig Jennings <c@cjennings.net> | 2025-11-01 21:39:52 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-11-01 21:39:52 -0500 |
| commit | 8fa8c6bbf85eafbffd89994acfccbc7a8922d467 (patch) | |
| tree | f2e5d49a0ce16b82a359a575c21ee374f1fef727 /assets/chess | |
| parent | b4fe852a208ac7c7880a585a483f66aab9f089ee (diff) | |
docs: Add Emacs Lisp development best practices to NOTES
Document lessons learned from chime-org-contacts.el development about
preventing parenthesis errors in Emacs Lisp code.
Key Topics:
- AI code generation strategies (small functions, immediate testing)
- Human developer tools (paredit, smartparens, rainbow-delimiters)
- Real-world case study from chime-org-contacts.el refactoring
- Tools and workflow summary table
Problem Identified:
Both AI and humans struggle with deeply nested Emacs Lisp functions
due to difficulty counting parentheses manually.
Solution Documented:
Break complex functions into small (< 15 line) helpers:
- Easier to verify correctness
- Easier to test independently
- Self-documenting through clear function names
- AI and humans both succeed
Tools Referenced:
- Structural editing: paredit, smartparens, lispy
- Real-time validation: flycheck, flymake
- Visual aids: rainbow-delimiters-mode
- CI/CD: pre-commit hooks with check-parens
This section serves as permanent reference for future Emacs Lisp
development in this repository and others.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'assets/chess')
0 files changed, 0 insertions, 0 deletions
