Hacker News

New stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Show HN: Low Poly Earth – The whole planet in 3D, built from OpenStreetMap data (lowpolyearth.pages.dev)
    —discuss
  2. Detect when elements overlap with CSS (ishadeed.com)
    —discuss
  3. What I believe about the future of software development (thorstenball.com)
    —discuss
  4. Dual-Syncopation Meet-in-the-Middle Attacks: New Results on SHA-2 and MD5 (iacr.org)
    —discuss
  5. Ask HN: How is code review holding up at your company?
    —discuss
  6. Phyllotaxis: An audio-reactive LED display (jagi.studio)
    —discuss
  7. privacyguides.org (github.com/privacyguides)
    —discuss
  8. The large robotic arm on the International Space Station has stopped working (arstechnica.com)
    —discuss
  9. Opus 5.5 showcasing: Liquid Glass-like elements for the web (tomacco.github.io)
    1comments
  10. Infinitrance [video] (youtube.com)
    —discuss
  11. How to reduce token usage in Claude Code, Codex, and Cursor (avanderlee.com)
    —discuss
  12. Recursive Self-Improvement via On-Policy Distillation for Reasoning (arxiv.org)
    —discuss
  13. The problem is not the AI code, but nobody knows anything anymore (ssp.sh)
    —discuss
  14. 13 Months Sober (2025) (bobbytables.io)
    —discuss
  15. Active, in-the-wild exploitation of CVE-2026-88771 with IoCs (twitter.com/lupovisdefence)
    —discuss
  16. Congress is considering giving doctors automatic annual pay raises in Medicare (statnews.com)
    —discuss
  17. Show HN: Assay – a QA CLI that finds bugs with no LLM and no tests written (github.com/awss1i)
    —discuss
  18. Nero (storia-e-libri.fandom.com)
    —discuss
  19. AI-guided optimization for thermostable mRNA vaccines (nature.com)
    —discuss
  20. Should I Stay or Should I Go? (newyorker.com)
    —discuss
  21. Daily Logic Puzzles (logicpuzzles.io)
    1comments
  22. APOD's main NASA site is moving (apod.com)
    1comments
  23. Open-source Python simulation benchmarking rainbow gravity against NGC 3198 (domushorizon.vercel.app)
    —discuss
  24. Mega Bomberman: Special 8 Player Demo (segaretro.org)
    —discuss
  25. FY2025 NASA Planetary Research and Analysis Funding Cut by More Than 50% (planetary-research.org)
    —discuss
  26. Jevgrep: A CLI for coding agents that uses Jev to discover relevant files (github.com/dzhng)
    —discuss
  27. Syncing Rust GCC back end or how to test Murphy's law (guillaume-gomez.fr)
    —discuss
  28. Show HN: I built an idle game that rewards you for doomscrolling less (getisland.app)
    1comments
  29. I confronted my biggest haters online. It didn't go as expected (slate.com)
    —discuss
  30. The Glimmer in Our Eye (With Grant Sanderson) [video] (youtube.com)
    —discuss

What makes Lisp difficult to read?

2 pointsby 1h agopaultm.nl
2 comments
53m agoHN ↗

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.

48m agoHN ↗

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.