Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> most things boil down to ideas from the 70's

Rather from the sixties. E.g. OOP including dynamic dispatch, late binding, GC etc. appeared 1967 with Simula.



GC was a bit earlier. :)


Earlier than the sixties? All elements of OOP were known before 1967, but their combination, which we still use today under the title OOP, appeared in Simula 67 for the first time. I think the first appearance of a GC in literature was in 1960.


Did Lisp have GC from the beginning? If so, that would be 1958.


I think, the first mark‑and‑sweep collector was published in McCarthy's 1960 Communications of the ACM paper "Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I". It's resonable to assume, that they already had it when Steve Russell implemented the first Lisp evaluator, but we don't know exactly when it was added.


No, that paper doesn't describe the garbage collector. I do think it is true that before it was published Slug Russell had implemented the GC, but I think it's correct that we don't have listings from that early.

Edit: yes, yes it does describe the garbage collector.


Isn't the "Free-Storage List" in section 4c, starting on page 26, a mark & sweep collector? They didn't use the term then, but I think it describes one. I'm not aware of any earlier publication.


The paper only has 12 pages, but there is a section 4c with that title starting on page 192 of https://dl.acm.org/doi/pdf/10.1145/367177.367199, and you are correct that it describes a mark-and-sweep collector. I was mistaken, and I appreciate the correction.


Ok, I see. Just downloaded the first hit from Google, which has 34 pages and is nicely printed: https://www-formal.stanford.edu/jmc/recursive.pdf.


The concept of automatic memory management dates back to the 1950s.

However, John McCarthy, the creator of Lisp, introduced the first widely recognized garbage collection mechanism around 1959/1960.


If so, he didn't write about it in that paper, and I don't think he introduced it at all; I think Slug Russell did.

Correction: as Rochus pointed out, he certainly did write about it in that paper, giving a complete description.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: