3 pointsby ibobevan hour ago2 comments
  • perrygeoan hour ago
    > I have not yet encountered a fully satisfying explanation as to why Lisp is perceived as being less readable.

    Difficulty is, by definition, relative to one's skill. You cannot so quickly discount the fact that 99% of programming is taught in Java/C style language syntax. If you've had lifelong exposure to Lisp, you might feel exactly the opposite. The author does a poor job of justifying why these pop-cognitive-psych theories should have more weight than prior exposure.

    Personally, as someone with decades of exposure to both styles, I look at the factorial example and see everything I love about Lisp syntax - consistent, no magic keywords and syntax to memorize, it represents a tree just like my mental model of code, there's no way to fall through and forget an else, expressions instead of statements, no early returns ... literally everything about the Lisp example is more readable to me. YMMV.

  • PaulHoulean hour ago
    I tend to struggle with other people's indentation rules for code and other programming languages, like nobody liked my article that said you should carry indentation into embedded strings that represent other programming laguages like SQL

       result = sql.execute("""
          SELECT someColumn
          FROM thatTable
          WHERE anotherValue>55
            AND state='pending'
          ORDER BY createdDate
       """)
    
    Ultimately the idea is that indentation should be influenced by semantics, the intention of the code, and not just the syntax. Of course that is against the "one way to indent" philosophy of Go, Biome, and such... But I might accept less than optimal indentation to put an end to tab wars once and for all.

    I find indentation of Lisp always seems to fail at communicating in the semantics, much worse than other languages. Things like

       (if condition truePath falsePath)
    
    are scrambled when your eye skips over something. If the Lisp community got over its respect for tradition perhaps they'd develop some kind of syntax highlighting or tooltips or something that would clarify this sort of structure.

    About 90% of real language have subject-verb-object or subject-object-verb orders

    https://en.wikipedia.org/wiki/Subject%E2%80%93object%E2%80%9...

    verb-subject-object and verb-object-subject are more Lisp-like and represent 10% of languages including Standard Arabic, Finnish and Fillipino.

    I like extreme parsimony, like I'd love to write stuff like

       format = lambda: `%1-%2`
    
    but I think as complexity goes up depending on the meaningful order of elements breaks down in many ways and you need to give things meaningful names.