Illuminating experience and it will also help you see (among many other things) the parentheses in a different light.
Illuminating experience and it will also help you see (among many other things) the parentheses in a different light.
Needless to say that was my opinion and every day I think, more and more, how right he was.
(later I did make some gui apps that included scripting and chose s-expr syntax because of how simple it is to implement it)
1) Humans are not that equipped to handle that level of nesting without some other aid, this is why Lisp code is usually indented.
2) Parentheses aren't just about grouping, and this is unintuitive. For example, x is not the same as (x). This is a bit like in set theory where x is not the same as {x}, but parentheses do not look like the kind of sign that would work like that.
For other languages, similarly, x is not the same as x()
had brackets been displayed as curly braces in C - everything would look much more manageable
(foo (bar (1 2 3))
you'd prefer {
foo {
bar {
1
2
3
}
}
}
is that right? ( aar
(bar1 1 2 3)
(bar2 1 2 3)
(bar3
(car1 2 3)
(car2)
(car3)
)
)
vs(aar (bar1 1 2 3) (bar2 1 2 3) (bar3 (car1 2 3)(car2)(car3)))
But there's quite a few little reader projects that swap out the first layer of syntax for another. Lisp isn't entirely tied to one representation.