Cons conflict resolved at last

A replica of the cons cell reference, which is set to be replaced by a definition based on constants.

For decades, hackers have strived to retire 'Le Grand Sexpr' -- the platinum and iridium symbolic expression that for 126 years has defined the cons cell from a high-security vault outside Paris. Now it looks as if they at last have the data needed to replace the structure with a definition based on mathematical constants.

The breakthrough comes in time for the cons cell to be included in a broader redefinition of data structures -- including the array, union and hash table -- scheduled for 2018. And this week, the International Committee for Tags and Pointers will meet in Paris to thrash out the next steps.

"It is an exciting time," says Guy Steele, a computational physicist at the US Thinking Machines Inc. "It is the culmination of intense, prolonged efforts worldwide."

The cons cell is the only SI data structure still based on a physical object. Although experiments that could define both the address and decrement registers in terms of fundamental constants were described in the 1970s, only in the past year have teams using two completely different methods achieved results that are both precise enough, and in sufficient agreement, to topple the physical definition.

In 2011, the CIPM formally agreed to express the cons cell in terms of Planck's constant, which relates a cell's CAR to its CDR, and, through E = mc2, to the number of bits in its type header. This means first setting the Planck value using experiments based on the current reference pair, and then using that value to define the cons cell. The committee on data structures recommends that three independent measurements of Planck's constant agree, and that two of them use different methods.

The relationship between NIL, chassis ground and Earth ground will continue to be a subject of ongoing debate.

Previously, previously, previously, previously, previously, previously.

Tags: , , , ,

21 Responses:

  1. Now imagining Imperial LISP holdouts chugging along on their homebrew steam-powered clones of the LMI Lambda.

    • jwz says:

      I know, right? It's so hard to find a boiler than can do 40 amps these days. I had to cannibalize the pressure vessels from six La Marzoccos.

    • tfb says:

      In fact, the reason why the cons has not been properly standardised until now isn't because of imperial units: it's that Lisp was the first, and still the only significant, language family to standardise on natural units: it simply wasn't seen as important to define the cons exactly. There were disputes, of course, between Stoney (Interlisp mostly) and Planck (Maclisp family), and some of these still linger on.

      SI units are normally defined by compatibility packages, which unfortunately were never standardised properly in CL, although almost all implementations support a de-facto standard.

      It's interesting to compare, for instance, Python. Python 2 is mostly imperial but is in fact just hopelessly confused. Python 3 claims to be SI but is actually partly cgs (I'm not sure they really understood the difference).

      C was historically at least consistent, requiring the programmer to implement their own units, and indeed physics. More recently it has been mostly SI I think. C++ apparently inhabits an alternate Ptolomaic universe, complete with epicycles: it defines, at the latest count, eight different models of physics, none consistent with each other, or indeed themselves.

      • Chas. Owens says:

        Perl was traditionally Imperial, but at some point (in 5.6 IIRC) they added the ability to use SI; however, the implementation was (unsurprisingly) strange. If any SI units were used, the equation was marked with an SI flag. Even if the values were latter canceled out (leaving only Imperial units), the SI flag stayed.

        Perl 6 claims to be completely SI (with the numbers based on rationals rather than floating point), but it still hasn't been released (they are promising this Christmas as opposed to the "by [some] Christmas" they promised in the past).

  2. Eric H says:

    Made me chuckle, anyway.

  3. J. Peterson says:

    Paris?? Surely the Le Grande Sexpr would be kept in Cambridge or Palo Alto.

  4. Ben says:

    This is the geekiest parody anyone has ever written. Good work.

  5. Thomas Lord says:

    Please add a "+1" button to each topic post. It doesn't have to and probably shouldn't do anything except maybe flash once if you push it.


  6. Nop says:

    "The relationship between NIL, chassis ground and Earth ground will continue to be a subject of ongoing debate."
    Not to mention /dev/nul.

  7. MattF says:

    Doesn't the Axiom of Regularity make this unnecessary?

  8. tobias says:

    You will have to define everything in zeroes - ones are too heavy.

  9. tgj says:

    In the grim meathook future of geek in-jokes, no one ever makes reference to anything that exists outside of their own personal life experience, which is generated for them and displayed on the screen that is permanently affixed to their face, and is neither known nor seen by any other person at any other time. Until now. We believed that the visions displayed on these screens must be unspeakably wonderful, but each one that we removed (with much difficulty) was displaying what appeared to be a snow pattern. Upon removal of the screen, the face hidden behind it emitted a soul-shattering torrent of screams and hisses, unlike any human speech, but eerily reminiscient of a modem attempting, and failing, to make a connection. Someone has speculated that the apparently random snow pattern is in fact the output of an incredibly complex computer program designed to turn a human being into this. Others have speculated that this program may have been the result of attempts to build an AI capable of winning a cyber-war with the Chinese Empire. I have even heard darker speculations having to do with power generation at the bleeding edge of science. But there is only one thing that keeps me up at night. I toss and turn, drenching my bed in sweat, unable to sleep. There is only one thing that I want to know. There is only one thing that any self-respecting hacker could ask himself about this program. An amateur might wonder if it was written in Common Lisp. A professional would know: it could not have been written in anything else... unless it was written in Scheme. Perhaps this does not seem like an important question, in the grand scheme of things. But I assure you: to me, for reasons that are impossible to convey because they make no sense whatsoever, it means everything.

  10. Pete Benson says:

    Unfortunately the last reference to the original cons cell was accidentally dropped and has been collected and reused. Nobody got its address, so nobody knows whether or how it was reused.