A Closed and Common Lisp (2021)
The author enjoyed learning Common Lisp during the Advent of Code challenge, appreciating its unique blend of programming styles, powerful tooling, and multiple return values, despite some library limitations.
Read original articleThe author reflects on their experience learning Common Lisp while participating in the Advent of Code challenge for 2021. With minimal prior exposure to Lisp, the author found the language to be a refreshing departure from mainstream programming languages, likening it to an alternate computing history. They appreciated Common Lisp's blend of functional and procedural programming styles, noting its support for arrays and looping constructs. The syntax, characterized by extensive use of parentheses and S-expressions, posed some readability challenges but was ultimately manageable. The author highlighted the powerful tooling available, particularly the integration of the REPL with the SLIME editor, which facilitates a smooth coding experience. They also praised the language's ability to return multiple values from functions, a feature that enhances convenience. However, the author expressed some disappointment with the standard library's limitations, suggesting a preference for a more comprehensive built-in library. Despite these drawbacks, they found Common Lisp to be a solid and enjoyable language, recommending it to others, especially Emacs users. The author concluded that they are likely to use Common Lisp for future personal projects.
- The author enjoyed learning Common Lisp, finding it a unique programming experience.
- Common Lisp effectively combines functional and procedural programming styles.
- The extensive use of parentheses in syntax can hinder readability but is manageable.
- The integration of REPL with SLIME enhances the coding experience significantly.
- The standard library's limitations were noted, but the author still found Common Lisp compelling.
Related
Ask HN: Why do people say "Lisp has no syntax"? It has infinite syntax
The author discusses Lisp's syntax, highlighting its list-based structure and challenges with constructs like `cond`. They conclude that Lisp's complexity resembles other languages, despite its unique features.
The Liberating Experience of Common Lisp
The author critiques modern programming languages for their complexity, praising Common Lisp for its stability, unique developer experience, and creative freedom, making it preferable for software development.
On: Lisp, on Lisp, and MySelf
The author shares mixed feelings about Common Lisp, noting frustrations with its syntax but appreciating its flexibility. They recommend "On Lisp" and encourage experimentation and openness to new programming experiences.
Lisp Is Not an Acceptable Lisp
The blog post critiques Lisp's fragmentation, outdated features, and poor integration of CLOS, arguing these issues hinder adoption and progress, while Paul Graham's promotion of Arc confuses the community.
Why I Chose Common Lisp
The author switched from Clojure to Common Lisp after seven years, citing performance issues. Common Lisp met their needs for standalone executables, multithreading, and offered a supportive community and resources.
Related
Ask HN: Why do people say "Lisp has no syntax"? It has infinite syntax
The author discusses Lisp's syntax, highlighting its list-based structure and challenges with constructs like `cond`. They conclude that Lisp's complexity resembles other languages, despite its unique features.
The Liberating Experience of Common Lisp
The author critiques modern programming languages for their complexity, praising Common Lisp for its stability, unique developer experience, and creative freedom, making it preferable for software development.
On: Lisp, on Lisp, and MySelf
The author shares mixed feelings about Common Lisp, noting frustrations with its syntax but appreciating its flexibility. They recommend "On Lisp" and encourage experimentation and openness to new programming experiences.
Lisp Is Not an Acceptable Lisp
The blog post critiques Lisp's fragmentation, outdated features, and poor integration of CLOS, arguing these issues hinder adoption and progress, while Paul Graham's promotion of Arc confuses the community.
Why I Chose Common Lisp
The author switched from Clojure to Common Lisp after seven years, citing performance issues. Common Lisp met their needs for standalone executables, multithreading, and offered a supportive community and resources.