Live data from Hacker News

Why Lisp is now an acceptable scripting language

fare.tunes.org

41–50 of 138 posts

Re: Why Lisp is now an acceptable scripting language

#41

Earlier quoted context omitted.

I hope he doesn't look at HN HTML code.

Looked. So what? There's a difference between "ugly" and "invalid". Both cases are bad but the first one has much more impact on end users. Edit to answer "how is it invalid": is this not enough? http://validator.w3.org/check?uri=http%3A%2F%2Fnews.ycombina...

This is HN webpage, I meant the article page doctype.

taken from w3c:

    

article doctype:

    

Re: Why Lisp is now an acceptable scripting language

#43
post #37

Earlier quoted context omitted.

They made it washed out with poor contrast and made the lines annoyingly short. Seems like the first site is more readable to me.

Everything we know from centuries of design experience and all science knows about the eyes and how we read, tells us they made it better than the first site. There's not even a parallel universe where the first one is better -- and it's not a subjective issue either.

What papers say that low contrast is better than high contrast black on white? There is research to show that black on white is better than white on black, but I doubt there's any to show that poor contrast dark grey on light grey is better than black on white.

It is just a fashion, there's no science to say that low contrast is better. http://contrastrebellion.com/

Shorter lines I might grant you, though.

Re: Why Lisp is now an acceptable scripting language

#44
post #40

Back in 2012 when I was sure I wanted to master some dialect of Lisp but wasn't sure which one yet, I read about 80% of Practical Common Lisp before I noped the heck out of there. The whole reason I was drawn to Lisp was for its semantic and syntactic purity, simplicity, and consistency, and out of the three popular Lisps at the time, CL felt like it had these the least. Ultimately I ended up going with Clojure after…

I sympathize. Different concerns pull lisp in different directions. CL is, and always has been, about getting stuff done and isn't above having some warts, especially historical warts. Scheme was more academic and elegant, but not great for real world use until some implementations "fixed" that. Racket, for instance, isn't quite a proper Scheme any longer, but is definitely practical. Clojure looks interesting, but I…

Maybe give it another look sometime? You rarely have to interact with the Java ecosystem if you're not using Java libs, and the JVM != Java. There's also ClojureScript, which is the same, but runs in browsers, Node, etc.

Re: Why Lisp is now an acceptable scripting language

#45

Back in 2012 when I was sure I wanted to master some dialect of Lisp but wasn't sure which one yet, I read about 80% of Practical Common Lisp before I noped the heck out of there. The whole reason I was drawn to Lisp was for its semantic and syntactic purity, simplicity, and consistency, and out of the three popular Lisps at the time, CL felt like it had these the least. Ultimately I ended up going with Clojure after…

I have tried lisps looking for the famed syntactic purity but I didn't really find it. For example, following the little schemer books, they don't print scheme as the actual ascii you need to type, instead they use typography like bold, italic and greek symbols that you have to replace with the uglier reality to distinguish between things like s-expr from lists. It feels like they are embarrassed by the cludgy real s…

> ... they use typography like bold, italic and greek symbols that you have to replace with the uglier reality to distinguish between things like s-expr from lists.

My main complaint with Scheme is that it's hard to distinguish a "call" from a plain list. For example, in `(let ((foo 1) (bar 2)))`, `let` is a call, but `foo` and `bar` are just being assigned, not called. Clojure uses `(let [foo 1 bar 2])`, so you can tell that `let` is a call, but `foo` and `bar` are now unwrapped and placed inside square brackets to signify plain data, not a call.

> To give clojure a whirl, ... there were so many non-s-expr syntactic special cases for things like list comprehensions and common macros

Everything is still an s-expr. The square and curly braces still follow the same rules, but they just mean they are not "calls" like parens would normally signify.

For a list comprehension example: `(for [m messages] (str m))`, `for` and `str` are calls and `[m messages]` is just data. It could be unwrapped like `(for m messages (str m))`, but it's wrapped in square brackets as a visual indicator for what's important. But if it was wrapped in parens like in Scheme, it could be confused as a "call".

Clojure is very well-designed to solve visual problems of Scheme and other Lisps. I recommend looking at it again :D

Re: Why Lisp is now an acceptable scripting language

#46
People who agree with the overall philosophy of this will be interested in avesh, an attempt to write a full shell in CL.

https://gitlab.com/ralt/avesh

I am also very interested in xonsh. I am increasingly of the opinion that as useful as a package manager would be like {bash,zsh} compliant shells written in host languages that allow you to merge bashisms/Unixisms into your host lang and vice versa.

I started looking into this, specificaly with Haskell. I founde chrisdone's Hell and tangentially turtle. Combining those would be insane!

Re: Why Lisp is now an acceptable scripting language

#48
François-René Rideau has done a lot to evolve ASDF, the Common Lisp build system, and lots have been done since, also, like an implementation manager[0], an assets downloader[1] and compiler[2].

[0]: https://github.com/roswell/roswell

[1]: https://github.com/eudoxia0/rock

[2]: https://github.com/eudoxia0/asdf-linguist

Re: Why Lisp is now an acceptable scripting language

#49
post #47

Can anybody explain the advantages of switching to a functional language when it is not a pure one? For example, how is it better than Javascript? Is the uniformity of the syntax (and perhaps implicit currying) the main benefit?

Which dialect/s of Lisp have implicit currying as a language feature? Or do you have in mind other non-pure functional languages?

Re: Why Lisp is now an acceptable scripting language

#50
post #37

Earlier quoted context omitted.

Everything we know from centuries of design experience and all science knows about the eyes and how we read, tells us they made it better than the first site. There's not even a parallel universe where the first one is better -- and it's not a subjective issue either.

What papers say that low contrast is better than high contrast black on white? There is research to show that black on white is better than white on black, but I doubt there's any to show that poor contrast dark grey on light grey is better than black on white. It is just a fashion, there's no science to say that low contrast is better. http://contrastrebellion.com/ Shorter lines I might grant you, though.

>What papers say that low contrast is better than high contrast black on white?

Not about low contrast being better -- only about (slightly) reduced contrast than full on white on black blaze.

Black on white is better for readability, but the brightness can induce fatigue for longer term use (and people use computers all day long) and also hurt knowledge retention (according to educational related research).

A slightly off-white is better there than shining a white backlight on your eyes for hours on end (and adjusting monitor brightness achieves the same effect, color-wise as having a "less white" background in the first place, and is recommended by doctors).

Post reply on HN