[HN Gopher] Rabbit Scheme Compiler
___________________________________________________________________
Rabbit Scheme Compiler
Author : swatson741
Score : 54 points
Date : 2023-07-03 08:38 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| soegaard wrote:
| In case anyone is wondering about the name Rabbit.
|
| It's an old pun in the Scheme world to make Scheme compilers have
| a name that ends in "bit". I know at least three:
|
| - Orbit - Rabbit - Gambit
| allenrb wrote:
| I confess to hoping this was a compiler for rabbit schemes, but
| no such luck. Those things are everywhere around me (near
| Chicago, IL) and it would have been insightful to do some
| reverse-engineering. Alas, their schemes shall remain
| mysterious.
| xscott wrote:
| Maybe you'd include Twobit in that list:
| http://larcenists.org/twobit.html
| soegaard wrote:
| I had forgotten aboout "TwoBit".
|
| The name Larceny is a pun too btw.
| belmarca wrote:
| BTW, I have Kranz's Orbit thesis on my desk. Nice and succinct!
| mrweasel wrote:
| I though it was due to the world already having Chicken Scheme
| and Gerbil Scheme, neither of which ends in "bit".
|
| Edit: Rabbit seems to be older than both of those two schemes.
| neilv wrote:
| Gambit also hits another naming convention for Scheme
| implementations: that they be synonyms for "scheme" or related
| to it.
|
| Scheme, Gambit, Racket, Guile, Larceny.
|
| Gauche might be an antonym?
|
| (IIRC, Racket got its name shortly before they were looking
| into promoting its use on Wall Street. I guess OCaml didn't
| have the problem of lighting up the regulatory compliance
| monitoring board every time someone mentioned "Racket" in
| email.)
| davexunit wrote:
| Guile has the extra layer of being "Guy L." (Steele)
| soegaard wrote:
| Also: Picobit and Picbit.
| CodeArtisan wrote:
| >Gauche might be an antonym?
|
| IIRC it is a reference to this (Gauche author is Japanese)
|
| https://en.wikipedia.org/wiki/Gauche_the_Cellist
| belmarca wrote:
| And Ribbit: https://github.com/udem-dlteam/ribbit.
| EdwardCoffin wrote:
| I understood it was wordplay from _lapin_ , the French word for
| rabbit. The way I remember it is it was a program that took an
| input of Lisp Assembly Programs (LAP-in). I can't find a source
| for this, so I may be misremembering parts of it, particularly
| the expansion of the acronym.
| abecedarius wrote:
| Rabbit was the first. I read somewhere that this was a kind of
| pun on the MacLisp LAPIN function. LAPIN assembled LAP code,
| Lisp Assembly Program (the penultimate stage of compilation),
| and 'lapin' is French for rabbit.
| Zambyte wrote:
| Here is the report that defined Rabbit:
| https://dspace.mit.edu/bitstream/handle/1721.1/6913/AITR-474...
| abecedarius wrote:
| Guy Steele's master's thesis explains the ideas, and includes
| this code as an appendix with extra comments on the facing pages
| (from page 117):
| https://dspace.mit.edu/bitstream/handle/1721.1/6913/AITR-474...
|
| I also added extra comments (my own notes as I figured things
| out) in a copy up on my old website (with permission) -- I didn't
| know about the above appendix at the time. I'm not sure if it'd
| add anything to the above, but I could dig it up.
|
| Related work at https://en.wikisource.org/wiki/Lambda_Papers
___________________________________________________________________
(page generated 2023-07-04 23:02 UTC)