Of course, I meant to say that the 68k is/was 'big endian', unlike the Vax
which was little endian.


On Thu, Feb 16, 2023 at 12:17 PM Guillermo J. Rozas <gjr6...@gmail.com>
wrote:

> Before 'Moriturus te saluto', MIT (C) Scheme used to exit/terminate with
> the 'User halt code' message which is what Jim Miller chose when he
> implemented the original version of what at the time was called 'C Scheme'.
> The original implementation of MIT Scheme was on top of MacLisp running on
> a DEC PDP-10 computer [1], then re-written in a combination of Pascal and
> Motorola 68K assembly language to run on the HP 'Chipmunk' computers, and
> when there arose a need for a more 'portable' version, Jim started a
> version in C that could share binaries (Scode) with the 68K version.  C
> Scheme was originally developed for DEC Vax minicomputers which were little
> endian, as opposed to the 68K which were little endian and the PDP-10 which
> was not even a byte-oriented computer. [2]
>
> I had worked on both the MacLisp and 68K versions and at some point
> started working on C Scheme.  I disliked 'User halt code' because the user
> (me) wasn't halting. :-) and picked the Latin version because it was fun.
>
> I still believe that my change to 1st person singular is both correct and
> consistent with 'Morituri te salutamus' which is 1st person plural, as
> opposed to what would be a 3rd person singular version of 'Morituri te
> salutant' which is what it was eventually changed to claiming that my
> rendition was incorrect.
> The sources claim that both 1st and 3rd person plural versions were used
> (or perhaps they can't decide), and hence the 1st person should be allowed,
> and I believe it is legal Latin although I only took Latin for one year in
> HS in 1977-1978.
>
> Just to add a little to Arthur's story.
>
> [1] This was an evolution of the very first Scheme interpreter that Gerry
> Sussman and Guy Steele implemented in the mid 1970s.  Eventually it had a
> bit of PDP-10 assembly language as well as MacLisp didn't implement full
> tail recursion and various hacks were used to implement full tail recursion
> at some speed.
> [2] Technically, Jim started developing C Scheme on a PDP 10 with an old C
> compiler, but he quickly moved to a Vax because the dialect of C on the
> PDP-10 was old and hence the code would not be very portable, and also
> because the PDP-10, sans extended addressing mode, could not address more
> than a 'Moby' (256 Kilowords of 36 bits each, a little over a megabyte)
> which was insufficient to keep up with the size of the system on the
> Chipmunks, especially with the heap split in two for the stop-and-copy
> garbage collector.
>
> On Thu, Feb 16, 2023 at 11:04 AM Arthur A. Gleckler <a...@speechcode.com>
> wrote:
>
>> On Thu, Feb 16, 2023 at 8:21 AM Patrick Heil <patrickheil...@gmail.com>
>> wrote:
>>
>>
>>> My name is Patrick. I'm a college student who worked with the MIT Scheme
>>> Interpreter in a Comparative Programming Languages course. I noticed the
>>> interpreter would exit with latin phrases such as "Fortitudine
>>> vincimus." I wanted to learn more about these phrases and their meaning but
>>> couldn't find any reference to them in the user manual or online (only
>>> translations of the phrase from other sources).I assume the "Fortitudine
>>> vincimus." is a joke about the (alleged) tediousness of the Scheme
>>> programming language.
>>>
>>> Does anyone know anything about the background for these messages? Were
>>> they added in the original MIT Scheme interpreter or added later by the GNU
>>> devs?
>>>
>>
>> Originally, there was just one Latin message: *moriturus te saluto*: "I
>> who am about to die salute you."  It was added by Guillermo Rozas in
>> reference to the phrase *morituri te saltamus*, "we who are about to die
>> salute you," shouted to the Roman emperor by gladiators before they began
>> to fight in an arena (Wikipedia
>> <https://en.wikipedia.org/wiki/Ave_Imperator,_morituri_te_salutant>).
>> The idea is that the Scheme process, singular, salutes the user before
>> dying.  Much later, there was debate over the correctness of the conversion
>> from third person to first person: bug report
>> <https://savannah.gnu.org/bugs/?44086>.  We changed the verb ending, but
>> I'm still not sure whether that was necessary.
>>
>> Years after the original message was added, new maintainers removed it,
>> then added it back with other messages, chosen randomly.  You can find them
>> all in the sources
>> <https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/microcode/errors.h#n277>.
>> Here are the Latin ones, with translations:
>>
>> *Ceterum censeo Carthaginem esse delendam.*
>>
>> However, I think that Carthage should be destroyed.
>>
>> *Fortitudine vincimus.*
>>
>> By endurance, we conquer.
>>
>> *Post proelium, praemium.*
>>
>> After the battle, the reward.
>>
>> *Pulvis et umbra sumus.*
>>
>> We are dust and shadow.
>>
>> There's also "Happy happy joy joy!", from The Ren & Stimpy Show
>> <https://en.wikipedia.org/wiki/The_Ren_%26_Stimpy_Show>, and "..#]^@^@^@
>> NO CARRIER", the text often displayed when a dial-up modem disconnects.
>> (MIT Scheme was begun in the 1980s, when one connected to the internet over
>> dial-up modems and phone lines, often at 1200 bits per second.)
>>
>> Thanks for asking. This was a fun bit of history to write up.
>>
>> P.S.: Scheme is the opposite of tedious. (Others may differ, but I would
>> award that moniker to C++ or Java.)
>>
>

Reply via email to