Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming > #10160

Re: Is MIX utterly silly?

From David Brown <david.brown@hesbynett.no>
Newsgroups comp.programming
Subject Re: Is MIX utterly silly?
Date 2019-08-21 14:08 +0200
Organization A noiseless patient Spider
Message-ID <qjjc8c$3n0$1@dont-email.me> (permalink)
References <qjf5no$r62$1@news.albasani.net> <4llmle9n5ggun2iq6efttla2t4fir3a08j@4ax.com> <qjgo8o$2ir$1@news.albasani.net> <qjgq7t$jal$1@dont-email.me> <qjil67$l73$1@dont-email.me>

Show all headers | View raw


On 21/08/2019 07:35, Alf P. Steinbach wrote:
> On 20.08.2019 14:49, David Brown wrote:
>> On 20/08/2019 14:15, Peter Percival wrote:
>>> Robert Wessel wrote:
>>>> On Mon, 19 Aug 2019 22:52:54 +0100, Peter Percival
>>>> <peterxpercival@hotmail.com> wrote:
>>>>
>>>>> That's MIX as in vol 1 of AoCP.  I know Knuth and his books are highly
>>>>> regarded, but MIX is an April fool's joke, isn't it? 
>>>>> (Fool's/fools' not
>>>>> sure which.)
>>>>
>>>>
>>>> No, it's not.  But he has come up with a more modern ISA (RISC-ish)
>>>> for newer editions of the books, MMIX.
>>>>
>>>> He offers a justification for MIX in the beginning of volume 1.
>>>
>>> I find it unconvincing!
>>
>> Me too.  The MIX is a hideous design, totally at odds with its purpose.
>>   MMIX is better, but still pointlessly restricted and overly
>> complicated.
>>
>> For the purposes of demonstrating algorithms or calculating complexity,
>> there is little reason to have an assembly at all - a low level language
>> for an abstract machine would be better.  An unlimited register bank
>> with unlimited sized registers would be more useful.  Any limitations in
>> the artificial machine would be completely arbitrary - making the
>> algorithms in the book far more complicated than necessary, and failing
>> to match real systems.
>>
>> The result of the MIX and MMIX designs is that most readers gloss over
>> the MIX programs in the book without a second glance - it's easier to
>> work from the text and the mathematics than to try to comprehend the MIX
>> nonsense and then translate it into something useful on real computers.
>>
>> I'm a Knuth fan and admirer, with volumes 1 to 3 on my bookshelf as well
>> as a well-read TeXBook (I had the METAFONTbook too, but I seem to have
>> lost it).  But MIX was a big mistake.  IMHO, of course.
> 
> It was a child of its time.
> 

It shouldn't have been.  Knuth was better than that.

> One nice thing was that it worked with both decimal and binary. Another
> that it didn't directly support any particular calling convention.

None of that kind of detail should have been relevant.  The abstraction
level is all wrong for a book covering algorithms.

> I
> remember reacting to one (possibly the first) calling convention he
> exemplified, that of the caller storing the return address in the called
> routine's return instruction...

In the early days of computing, there were a variety of methods used for
handling subroutine returns.  I think one of the first one was something
like:

	return:
		goto
		.dataw
	sub:
		... subroutine code ...
		goto return

Calling was:
		... main code ...
		store "next" in "sub - 2"
		goto sub
	next:
		... rest of code ...

So the return address was not stored in the return instruction, but an
extra jump instruction that preceded the subroutine.  This had the
advantage of only needing a single address for the linking stage, but
meant returns needed an extra jump.

> 
> I once interviewed at Norsk Regnesentral (near Oslo) and they asked me
> why I wanted to work there. Well, when I saw the ad I was reminded of
> Knuth, that he started his books there. I didn't get past explaining
> that, to the part about also being reminded of the Simula work, because
> they were completely perplexed: “Knut?!?”. They then paid for a second
> interview round with a former captain of one of the coast guard ships,
> now employed by a recruiting bureau. He was extremely adversarial,
> focusing on my smoking (this was before I forgot to smoke, and quit) and
> my sex life, or possibly lack of it. I didn't get the job. Strange.
> 
> And so it goes.
> 
> The world evolves, and so do we, but sloooowly.
> 

True.  And contrary to common misconceptions, evolution does not
necessarily mean positive progress!

Back to comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Is MIX utterly silly? Peter Percival <peterxpercival@hotmail.com> - 2019-08-19 22:52 +0100
  Re: Is MIX utterly silly? Robert Wessel <robertwessel2@yahoo.com> - 2019-08-19 21:14 -0500
    Re: Is MIX utterly silly? Peter Percival <peterxpercival@hotmail.com> - 2019-08-20 13:15 +0100
      Re: Is MIX utterly silly? David Brown <david.brown@hesbynett.no> - 2019-08-20 14:49 +0200
        Re: Is MIX utterly silly? "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-21 07:35 +0200
          Re: Is MIX utterly silly? David Brown <david.brown@hesbynett.no> - 2019-08-21 14:08 +0200
            Re: Is MIX utterly silly? "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-21 17:10 +0200
              Re: Is MIX utterly silly? David Brown <david.brown@hesbynett.no> - 2019-08-22 15:11 +0200
          Re: Is MIX utterly silly? Louis Valence <lvalence@example.com> - 2019-08-23 17:13 -0300
            Re: Is MIX utterly silly? Peter Percival <peterxpercival@hotmail.com> - 2019-08-24 20:53 +0100
              Re: Is MIX utterly silly? luser droog <mijoryx@yahoo.com> - 2019-09-08 12:50 -0700
      Re: Is MIX utterly silly? Louis Valence <lvalence@example.com> - 2019-08-23 17:01 -0300

csiph-web