<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
(I also doubt the efficiency gained by IWord/ILongCard based implementations is worth the slight extra mental effort to understand. This code is already beyond a lot of people, keeping it bytes, with clear values, helps just a teeny tiny little bit to read it.<BR>
I still haven't studied how divide works for example. A comment indicating the actual values I'd say is an ok compromise, I had it in there briefly. I realize people might be tempted to press this into work where performance matters, at which point a larger base becomes more interesting. (I assume the "arithmetic" package looks similar.))<BR>
 <BR>
 - Jay<BR><BR> <BR>
<HR id=stopSpelling>
From: jay.krell@cornell.edu<BR>To: hosking@cs.purdue.edu; jkrell@elego.de<BR>Date: Wed, 10 Feb 2010 16:22:56 +0000<BR>CC: m3commit@elegosoft.com<BR>Subject: Re: [M3commit] CVS Update: cm3<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
You really anticipate it every changing?<BR>Ever having machines that can't address bytes?<BR>I know they used to exist, but it has been several decades.<BR>The world's vast swaths of C, C++, Java, C# won't port easily to them.<BR>If I understood you, you argued that it is clearly IByte, so I should<BR>feel free to make up my own constants outside of TInt.i3/TWord.i3.<BR>Though so far I haven't.<BR> <BR> - Jay<BR><BR> <BR>> From: hosking@cs.purdue.edu<BR>> Date: Wed, 10 Feb 2010 10:25:31 -0500<BR>> To: jkrell@elego.de<BR>> CC: m3commit@elegosoft.com<BR>> Subject: Re: [M3commit] CVS Update: cm3<BR>> <BR>> On 10 Feb 2010, at 16:13, Jay Krell wrote:<BR>> <BR>> > CVSROOT: /usr/cvs<BR>> > Changes by: jkrell@birch. 10/02/10 16:13:30<BR>> > <BR>> > Modified files:<BR>> > cm3/m3-sys/m3middle/src/: TWord.m3 <BR>> > <BR>> > Log message:<BR>> > just cleanup a little: make Mask and Base clear and not obfuscated, don't do the same compare twice in a row in xEQ (which should be plain EQ when I'm confident in its correctness, currently what EQ does is compute like three values and verify they all match)<BR>> <BR>> Mask and Base are computed like that so it is easy to change the underlying representation of Target.Int. We might not have IByte, but instead have IWord!<BR>> <BR>                                     </body>
</html>