4 ms·
> it's all just lists. Yes, Lisp code is made up of lists. > But it seems like there are so many special constructs and macros, that make it hard to read. > (
by kagevf 3y ago
> it's all just lists.
Yes, Lisp code is made up of lists.
> But it seems like there are so many special constructs and macros, that make it hard to read.
> (loop for i in '(1 2 3)
Common Lisp is a "programmable programming language" meaning that it's possible to make macros like the loop macro that aren't even what many consider "Lispy" - lots of people who otherwise like Common Lisp dislike the loop macro. But, it's a good example of a DSL and how far you can go with making one. Of course, there are other ways to do iteration besides loop, both standard built-in forms such as do or dolist, and even 3rd party libraries like series or iterate.
Also, when macros are expanded they resolve to lists - even the loop macro.
OTOH, something like MIT Scheme which was used in SICP is a much simpler Lisp compared to CL.