A syntactic utilities package for Common Lisp that radically simplifies REPL-driven development and large system programming.
RUTILS is a syntactic utilities package for Common Lisp designed to enhance developer productivity in both interactive REPL sessions and large-scale system development. It introduces modern syntactic conveniences, abbreviations, and utilities to streamline common programming tasks, such as literal syntax for hash-tables and lambdas, threading macros, and generic data structure access.
Common Lisp developers seeking to simplify REPL-driven development and large-scale system programming with modern syntactic shortcuts and utilities. It is particularly suited for those who value practical utility over strict adherence to traditional Lisp conventions.
Developers choose RUTILS for its radical approach to simplifying Lisp programming through uncommon syntactic choices and abbreviations, offering a comprehensive set of utilities like threading macros, generic element access, and a modern readtable that are not typically bundled together in standard libraries.
Radical Utilities for Common Lisp
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Introduces literal syntax for hash-tables, lambdas, and heredoc-strings via a custom readtable, reducing boilerplate and enhancing REPL interactivity, as highlighted in the 'Modern Readtable' feature.
Includes essential macros like WITH-GENSYMS, ONCE-ONLY, and Clojure-style threading macros (-> and ->>) for clearer code composition, streamlining common programming tasks per the 'Common Macros' section.
Provides GENERIC-ELT/? for uniform element access across diverse data structures like lists and hash-tables, simplifying manipulation as noted in the 'Generic Access' feature.
Explicitly excludes support for concurrency, functional programming, and advanced collections, requiring integration with external packages like FSET or CL-CONTAINERS for these needs, as admitted in the 'Explicitly not supported' section.
Introduces radical syntactic choices and abbreviations that may conflict with traditional Lisp conventions, potentially causing adaptation issues or codebase inconsistencies, as noted in the 'Philosophy' and history.
Relies on NAMED-READTABLES and CLOSER-MOP for functionality, adding installation and maintenance complexity compared to lighter utility libraries, per the 'Dependencies' section.