Two tiny Lisp evaluators
Everyone who has written Lisp has written tiny Lisp evaluators in Lisp: here are two more.
Everyone who has written Lisp has written tiny Lisp evaluators in Lisp: here are two more.
In Common Lisp, dynamic bindings and lexical bindings live in the same namespace. They don’t have to.
The first rule of understanding closures is that you do not talk about closures. The second rule of understanding closures in Common Lisp is that you do not talk about closures. These are all the rules.
I often find myself wanting a simple case
-like macro where the keys are regular expressions. regex-case
is an attempt at this.
My friend Zyni pointed out that someone has been getting really impressively confused and cross on reddit about empty lists, booleans and so on in Common Lisp, which led us to a discussion about what the differences between CL and Scheme really are here. Here’s a summary which we think is correct.
The various Stack Exchange sites, and specifically Stack Overflow, seem to be some of the best places for getting reasonable answers to questions on a wide range of topics from competent people. They would be a lot better if they were not so obsessed about closing duplicates.
What follows is an opinion. Do not under any circumstances read it. Other opinions are available (but wrong).
There are two laws.
slog
is a simple logging framework for Common Lisp based on the observation that conditions can represent log events.
Metatronic macros are a simple hack which makes it a little easier to write less unhygienic macros in Common Lisp.