News for hackers. Stuff that matters.
Re:Lisp in Space by behnamoh on Sunday August 06, 2023 @12:26PM (#37023619)
I actually find Clojure's syntax more confusing with all the punctuation they threw at it. Compare that, for example, with Scheme. I like the idea of keeping Lisps "pure" if that makes sense. In Lisp, the first element of a list is the operator. Okay, then how is Clojure a Lisp when it has vectors like this [1 2 3]? Unless [ is a macro that expands [1 2 3] to some real Lisp-y expression under the hood.
Re:Lisp in Space by fndex on Sunday August 06, 2023 @12:56PM (#37023983)
> I actually find Clojure's syntax more confusing with all the punctuation they threw at it.

Could you give some examples? Or "all the punctuation" you are referring just to []?

Re:Lisp in Space by Zambyte on Sunday August 06, 2023 @02:30PM (#37025085)
I'm not the same person you asked, but I find Clojure to be as easy to read as Scheme, but harder to write, since I need to remember what punctuation to use where.
Re:Lisp in Space by capableweb on Sunday August 06, 2023 @03:24PM (#37025606)
I don't know, it makes sense to use different data structures for different purposes. (), [], {} are all different data structures (lists, vectors and maps) that are useful in different situations, so makes sense to have shorthands for them.
Re:Lisp in Space by dreamcompiler on Sunday August 06, 2023 @05:28PM (#37026990)
Maybe. What bothers me about this idea is that it doesn't scale: As soon as you need a fourth bracket type you're hosed, because there are no more on the keyboard.

With Common Lisp, you can define [ and { if you want to, but it's more common to use a reader macro character in front of an opening paren or a function name after it if you want different data structures. Those approaches scale.

Re:Lisp in Space by pseudonamed on Sunday August 06, 2023 @01:59PM (#37024740)
It's a literal vector in the sense that '(1 2 3) is a literal list. Though unlike the quoted list it evaluates to itself, like a string or an int does.