Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    D

    Dan Weinreb

    danweinreb.org · Personal blog · on HN since 2008

    Dan Weinreb, a Lisp veteran who worked at Symbolics and ITA Software, writes about Lisp, its history, and distributed systems.

    Visit blogHN submissions
    Languages & CompilersHistoryDistributed Systems
    What HN says

    HN links it for first-hand Lisp history, the Symbolics rebuttal, the CAP theorem, and Lisp's condition system. Commenters also point to his ITA posts.

    Stats for nerds
    29HN people shared it
    30linked in comments
    553story points
    Aug 2012last shared
    2008people per year2012

    Top posts on HN

    1. 1
      Why Did M.I.T. Switch from Scheme to Python?
      3 people · 96 points · first shared 2009 · 65 comments on HN
    2. 2
      Why Did Symbolics Fail? (2009)
      2 people · 78 points · first shared 2012 · 61 comments on HN
    3. 3
      ACID in Theory and Practice
      1 person · 73 points · first shared 2010 · 17 comments on HN
    4. 4
      The Failure of Lisp? A Reply To Brandon Werner
      4 people · 61 points · first shared 2008 · 52 comments on HN
    5. 5
      Dan Weinreb: Programming with concurrency, clojure excitement
      1 person · 45 points · first shared 2009 · 14 comments on HN
    6. 6
      VoltDB versus NoSQL
      1 person · 32 points · first shared 2010 · 1 comments on HN
    7. 7
      Complaints I’m Seeing About Common Lisp (2007)
      1 person · 29 points · first shared 2009 · 12 comments on HN
    8. 8
      The “Worse is Better” idea and the future of Lisp
      2 people · 22 points · first shared 2009 · Discussion on HN
    9. 9
      Dan Weinreb comments on Google's acquisition of ITA
      3 people · 21 points · first shared 2010 · 12 comments on HN
    10. 10
      What Conditions (Exceptions) are Really About
      2 people · 21 points · first shared 2010 · Discussion on HN

    What HN people wrote when they linked it

    • lispmApr 2010

      What's new? This is just a rewritten version of one side of the Emacs history. Some parts of that are remembered 'slightly' different by other involved persons.

      Example: 'He took his revenge by going on a two year coding binge to reproduce every advance that was made by the team of hackers at Symbolics, and match it feature for feature on behalf of Greenblatt and LMI.'

      That's a myth.

      http://danweinreb.org/blog/rebuttal-to-stallmans-story-about-the-formation-of-symbolics-and-lmi

      Weinreb::

      'Next, he says: “After a while, I came to the conclusion that it would be best if I didn’t even look at their code. When they made a beta announcement that gave the release notes, I would see what the features were and then implement them. By the time they had a real release, I did too.” First of all, he really was looking at the Symbolics code; we caught him doing it several times. But secondly, even if he hadn’t, it’s a whole lot easier to copy what someone else has already designed than to design it yourself. What he copied were incremental improvements: a new editor command here, a new Lisp utility there. This was a very small fraction of the software development being done at Symbolics.'

      But worse, again Weinreb:

      'And while I’m setting the record straight, the original (TECO-based) Emacs was created and designed by Guy L. Steele Jr. and David Moon. After they had it working, and it had become established as the standard text editor at the AI lab, Stallman took over its…

    • strlenApr 2010

      ITA still uses Common Lisp. There are excellent blog entries on this matter by Dan Weinreb: <http://danweinreb.org/blog/category/ita-software>. However, they don't require Common Lisp knowledge from new hires. The beauty of Common Lisp is that there really is very little syntax to learn. Afaik, the simply use the excellent Practical Common Lisp book by Peter Seibel as a "training manual".

      The problem with Common Lisp, unfortunately, is there's no standard and cross-implementation way to create an application that makes heavy use of network I/O, multi-processing/multi-threading and the file system.

      That's would not be a problem internally at ITA (where must have built a standard set of libraries), but it would be a problem for taking submissions for web applications from applicants. On the other hand, even making a complete end-to-end webapp is a part of the Java standard. I am guessing that's why the puzzles that require talking HTTP either to or from a web server require Java.

      Several of their other puzzles, however, don't specify a programming language (e.g., bit vector, word rectangle) and could probably be very well suited to being done in a Lisp.

    • gruseomAug 2009

      It's in fact hard to capture what Worse is Better was getting at, because it's sort of incoherent. I've tried 2 or 3 times to understand it over the years and concluded that, beyond the most general point (which you describe well, I think), it's not clear what he's really saying. I noticed Rich Hickey said this the other day, as politely as one possibly could: The arguments made in Worse is Better are very nuanced and I'm not sure I understand them all.

      http://www.computerworld.com.au/article/313989/-z_programming_languages_clojure?pp=2

      By the way, Dan Weinreb has an interesting piece in which he reveals that he was the MIT guy and Bill Joy the Berkeley guy:

      http://danweinreb.org/blog/the-worse-is-better-idea-and-the-future-of-lisp

      I recommend Kay Schluehr's comment on that page, which argues that arguments like WiB are drawing overly general philosophical conclusions from instances of success or failure in the market.

    • nlAug 2010

      I understand your argument. Did you see my line Yes, there are other solutions - a price per Gb of traffic is an obvious one. But my point is that I'm not convinced other options should be outlawed yet?

      My point is that it may make sense - and be good for consumers - to deprioritize and/or discourage some kinds of usage over wireless. http://danweinreb.org/blog/google-and-verizon-a-new-hope references the story http://www.eweek.com/c/a/Government-IT/The-Truth-About-Google-Verizon-and-Net-Neutrality-371606/. I hadn't read this when I made my original post, but it makes a much more compelling argument based on the same ideas.

      It makes the point that for VOIP to work properly over wireless you can't have jittery delivery. One way to solve that it to use QOS to increase the priority of that in comparison to video. That isn't "neutral" access, but it is good consumers.

    • kenAug 2012

      Dan Weinreb (one of the Multics users who brought the Multics condition system to Lisp) wrote about why "error" is not a great term: http://danweinreb.org/blog/what-conditions-exceptions-are-really-about

      Personally, I've not seen it used for arbitrary control flow. If you control the syntax of things inside your block, then macros are probably good enough. If you're passing values outside of your own block, then you probably need continuations.

      OTOH, Lisp programmers have a tendency to not care what something is "supposed to be used for". Using Lisp at all is said to be "the most intelligent way to misuse a computer". :-)

    • jpdoctorMar 2012

      > rather than fiddling with very old environments.

      I worked on Symbolics machines (rms, please forgive me). I even fixed a bunch of the wire-wrapped original LMs from before Symbolics.

      I remember it being earth-shattering at the time (self-documenting? whoa) but I confess I'm curious how much was just the transition from TOPS-20 etc to a completely new single-user environment. All stuff from the dark ages really.

      I'd probably fire it up out of nostalgia if nothing else.

      BTW: Dan Weinreb's post ("Why did symbolics fail?" linked in the OP) has migrated to here: http://danweinreb.org/blog/why-did-symbolics-fail

    Related

    Tim Bradshawtfeb.org20 people

    The lost cause of the Lisp machines

    Tim Bradshaw
    Personal · last shared 2025
    Bill Clementsonbc.tech.coop53 people

    Y Combinator in Erlang

    Bill Clementson
    Personal · last shared 2013
    Mark Tarverlambdassociates.org88 people

    The Bipolar Lisp Programmer

    Mark Tarver
    Personal · last shared 2022
    Rainer Joswiglispm.de21 people

    Ergonomics of the Symbolics Lisp Machine

    Rainer Joswig
    Personal · last shared 2025
    Lambda Diodelambda-diode.com18 people

    Interfacing Fortran with OCaml

    Lambda Diode
    Personal · last shared 2026
    John Wiegleynewartisans.com49 people

    Monads in pictures

    John Wiegley
    Personal · last shared 2026
    Best In Classbestinclass.dk46 people

    Reddit/HN clone in Clojure

    Best In Class
    Personal · last shared 2020
    Dan Luudanluu.com1.2k people

    We only hire the trendiest

    Dan Luu
    Personal · last shared 2026