<body><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        <img id="c136daf3-22cf-4e7e-97a7-5fc2193e76b5" src="cid:1ceee913-1e7c-49fa-8183-f74f10a37153" width="378" height="85"></img><br><div class="mb_sig"></div><blockquote class='history_container' type='cite' style='border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;'>
                        <p style='color: #AAAAAA; margin-top: 10px;'>Am 18.05.2021 15:55:23 schrieb Marcel Taeumel <marcel.taeumel@hpi.de>:</p><div style='font-family:Arial,Helvetica,sans-serif'><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi Nicolas,<div><br></div><div>>  <span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">We could express this in inspectors with a bits field and a leading ... 00000000 or ... 11111111 digit (yes digits are 1 byte long currently).</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">You mean like this?</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">DEC -2</span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">HEX -02</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">OCT -002</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">BIN -0010</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">BIT 1111 1111 1111 1110</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">?</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px"><br></span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">Best,</span></span></div><div><span style="font-family: Arial, Helvetica, sans-serif"><span style="font-size: 13px">Marcel</span></span></div><div class="mb_sig"></div><blockquote class='history_container' type='cite' style='border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;'>
                        <p style='color: #AAAAAA; margin-top: 10px;'>Am 17.05.2021 18:53:42 schrieb Nicolas Cellier <nicolas.cellier.aka.nice@gmail.com>:</p><div style='font-family:Arial,Helvetica,sans-serif'>
<div dir="auto">Hi all,<div dir="auto">Virtual Machine implementation is a detail. SmallInteger are two complement, while LargeNegativeInteger are sign magnitude (with sign encoded in the class). From bit perspective (bitAnd: bitOr: bitAt: etc...), all Integer behave as two complement with an infinite sequence of 1 for negative, and infinite sequence of 0 for positive. We could express this in inspectors with a bits field and a leading ... 00000000 or ... 11111111 digit (yes digits are 1 byte long currently).</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le lun. 17 mai 2021 à 15:35, Marcel Taeumel <<a href="mailto:marcel.taeumel@hpi.de">marcel.taeumel@hpi.de</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div id="m_-1407977516953786835__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        > <span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px">The decimal representation is just one of many equivalent representations.</span><div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px"><br></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px">The problem being that the basic (machine) representation is not clear. I think its 2's complement. HEX and OCT -- I suppose -- are very close to the machine representation.</span></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px"><br></span></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px">That's not an issue for positive numbers. :-) </span></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px"><br></span></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px">Best,</span></span></div><div><span style="font-family:Calibri,Helvetica,sans-serif"><span style="font-size: 16px">Marcel</span></span></div><div></div>
                                        <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-top:20px;margin-left:0px;padding-left:10px;min-width:500px">
                        <p style="color:#aaaaaa;margin-top:10px">Am 17.05.2021 14:00:36 schrieb Thiede, Christoph <<a href="mailto:christoph.thiede@student.hpi.uni-potsdam.de" target="_blank" rel="noreferrer">christoph.thiede@student.hpi.uni-potsdam.de</a>>:</p><div style="font-family:Arial,Helvetica,sans-serif">

<div id="m_-1407977516953786835divtagdefaultwrapper" style="font-size: 12pt;color: #000000;font-family: Calibri,Helvetica,sans-serif" dir="ltr">
<p>> <span style="font-size: 12pt">> But this would not really match the actual object layout of integers in Squeak which can have arbitrary sizes ...</span></p>
<div>> </div>
<div>> So, the binary representation does not make sense, right? And neither does the HEX or OCT. :-)</div>
<div><br>
</div>
<div>Why do you think so? The object layout of Squeak Integer is not something like "list of decimal digits". The decimal representation is just one of many equivalent representations. On the other hand, any complement semantic adds a completely new concept
 because it neglects the infinite size of integers.</div>
<div><br>
</div>
<div>Best,</div>
<div>Christoph</div>
<p></p>
<div id="m_-1407977516953786835Signature">
<div id="m_-1407977516953786835divtagdefaultwrapper" dir="ltr" style="font-size: 12pt;color: rgb(0,0,0);font-family: Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<div name="divtagdefaultwrapper">
<div><span style="font-size: 10pt;color: #808080"></span></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%">
<div id="m_-1407977516953786835divRplyFwdMsg" dir="ltr"><span style="font-family:Calibri,sans-serif;color:#000000"><b>Von:</b> Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank" rel="noreferrer">squeak-dev-bounces@lists.squeakfoundation.org</a>> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Montag, 17. Mai 2021 13:08:47<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] The Trunk: Morphic-mt.1769.mcz</span>
<div> </div>
</div>
<div>
<div id="m_-1407977516953786835__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
> <span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px">But this would not really match the actual object layout of integers in Squeak which can have arbitrary sizes ...</span>
<div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px"><br>
</span></div>
<div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px">So, the binary representation does not make sense, right? And neither does the HEX or OCT. :-)</span></div>
<div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px"><br>
</span></div>
<div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px">Best,</span></div>
<div><span style="font-family: Calibri,Helvetica,sans-serif;font-size: 16px">Marcel</span></div>
<div></div>
<blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-top:20px;margin-left:0px;padding-left:10px;min-width:500px">
<p style="color:#aaaaaa;margin-top:10px">Am 17.05.2021 13:07:28 schrieb Thiede, Christoph <<a href="mailto:christoph.thiede@student.hpi.uni-potsdam.de" target="_blank" rel="noreferrer">christoph.thiede@student.hpi.uni-potsdam.de</a>>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">
<div id="m_-1407977516953786835divtagdefaultwrapper" style="font-size: 12pt;color: #000000;font-family: Calibri,Helvetica,sans-serif" dir="ltr">
<p>> <span>And I would have expected a 2's complement, right?</span></p>
<p><span><br>
</span></p>
<p><span>Ah, now I see. :-) But this would not really match the actual object layout of integers in Squeak which can have arbitrary sizes ...</span></p>
<p><span><br>
</span></p>
<p><span>In my opinion, we should just leave it as is (just maybe without the space), I don't really like such artificial limitations. :-)</span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
<div id="m_-1407977516953786835Signature">
<div id="m_-1407977516953786835divtagdefaultwrapper" dir="ltr" style="font-size: 12pt;color: rgb(0,0,0);font-family: Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<div name="divtagdefaultwrapper">
<div><span style="font-size: 10pt;color: #808080"></span></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%">
<div id="m_-1407977516953786835divRplyFwdMsg" dir="ltr"><span style="font-family:Calibri,sans-serif;color:#000000"><b>Von:</b> Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank" rel="noreferrer">squeak-dev-bounces@lists.squeakfoundation.org</a>> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Montag, 17. Mai 2021 12:52:23<br>
<b>An:</b> squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] The Trunk: Morphic-mt.1769.mcz</span>
<div> </div>
</div>
<div>
<div id="m_-1407977516953786835__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
> <span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px">Apart from that, I would have expected '-02' instead of '- 02'. :-)</span>
<div><span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px"><br>
</span></div>
<div><span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px">And I would have expected a 2's complement, right? Or even drop this representation for negative numbers altogether?</span></div>
<div><span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px"><br>
</span></div>
<div><span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px">Best,</span></div>
<div><span style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: 16px">Marcel</span></div>
<div></div>
<blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-top:20px;margin-left:0px;padding-left:10px;min-width:500px">
<p style="color:#aaaaaa;margin-top:10px">Am 17.05.2021 12:49:51 schrieb Thiede, Christoph <<a href="mailto:christoph.thiede@student.hpi.uni-potsdam.de" target="_blank" rel="noreferrer">christoph.thiede@student.hpi.uni-potsdam.de</a>>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">
<div dir="ltr">
<div id="m_-1407977516953786835x_divtagdefaultwrapper" dir="ltr" style="font-size: 12pt;color: #000000;font-family: Calibri,Helvetica,sans-serif">
<p>Nice catch! :-)</p>
<p><br>
</p>
<p>For anyone else wondering about this glitch:</p>
<p>Before:</p>
<p><img size="8037" id="m_-1407977516953786835x_img168171" style="max-width:99.9%" src="cid:fa526f81-7fe1-4dca-8487-be1c5bc0731b"></img><br>
</p>
<div id="m_-1407977516953786835x_Signature">
<div id="m_-1407977516953786835x_divtagdefaultwrapper" dir="ltr" style="font-size: 12pt;color: rgb(0,0,0);font-family: Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<div name="x_divtagdefaultwrapper">
<div>
<div id="m_-1407977516953786835x_Item.MessagePartBody">
<div id="m_-1407977516953786835x_Item.MessageUniqueBody" style="font-family:wf_segoe-ui_normal,"Segoe UI","Segoe WP",Tahoma,Arial,sans-serif,serif,EmojiFont">
<div dir="ltr">
<div id="m_-1407977516953786835x_divtagdefaultwrapper"><span style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,Apple Color Emoji,Segoe UI Emoji,NotoColorEmoji,Segoe UI Symbol,Android Emoji,EmojiSymbols">
<div id="m_-1407977516953786835x_Signature">
<div style="margin:0px"><span></span></div>
</div>
</span></div>
</div>
</div>
</div>
<div id="m_-1407977516953786835x_Item.MessagePartBody">After:<br>
<img size="7983" id="m_-1407977516953786835x_img364038" style="max-width:99.9%" src="cid:3b6aa025-5213-4b7a-80f9-d3ae74dbbfe9"></img><br>
</div>
<div id="m_-1407977516953786835x_Item.MessagePartBody"><br>
</div>
<div id="m_-1407977516953786835x_Item.MessagePartBody">IMO our printing protocol on Number should have a padded argument similar to the (post-comma) decimal places.</div>
<div id="m_-1407977516953786835x_Item.MessagePartBody"><span style="font-size: 12pt">Apart from that, I would have expected '-02' instead of '- 02'. :-)</span><br>
</div>
<div id="m_-1407977516953786835x_Item.MessagePartBody"><span style="font-size: 12pt"><br>
</span></div>
<div id="m_-1407977516953786835x_Item.MessagePartBody"><span style="font-size: 12pt">Best,</span></div>
<div id="m_-1407977516953786835x_Item.MessagePartBody"><span style="font-size: 12pt">Christoph</span></div>
</div>
<div><span style="font-size: 10pt;color: #808080"></span></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%">
<div id="m_-1407977516953786835x_divRplyFwdMsg" dir="ltr"><span style="font-family:Calibri,sans-serif;color:#000000"><b>Von:</b> Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank" rel="noreferrer">squeak-dev-bounces@lists.squeakfoundation.org</a>> im Auftrag von <a href="mailto:commits@source.squeak.org" target="_blank" rel="noreferrer">commits@source.squeak.org</a> <<a href="mailto:commits@source.squeak.org" target="_blank" rel="noreferrer">commits@source.squeak.org</a>><br>
<b>Gesendet:</b> Donnerstag, 6. Mai 2021 19:05:29<br>
<b>An:</b> <a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank" rel="noreferrer">squeak-dev@lists.squeakfoundation.org</a>; <a href="mailto:packages@lists.squeakfoundation.org" target="_blank" rel="noreferrer">packages@lists.squeakfoundation.org</a><br>
<b>Betreff:</b> [squeak-dev] The Trunk: Morphic-mt.1769.mcz</span>
<div> </div>
</div>
</div>
<span style="font-size: 10pt"><span style="font-size: 10pt">
<div>Marcel Taeumel uploaded a new version of Morphic to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Morphic-mt.1769.mcz" target="_blank" rel="noreferrer">http://source.squeak.org/trunk/Morphic-mt.1769.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Morphic-mt.1769<br>
Author: mt<br>
Time: 6 May 2021, 7:05:24.828981 pm<br>
UUID: 8109f744-f1f3-7048-8646-fed21a8e23d4<br>
Ancestors: Morphic-ct.1768<br>
<br>
Fixes minor glitch in objext explorers on integers.<br>
<br>
This makes me wonder ... what are the expectations for negative integers here?<br>
<br>
=============== Diff against Morphic-ct.1768 ===============<br>
<br>
Item was changed:<br>
  ----- Method: Integer>>explorerContents (in category '*Morphic-Explorer') -----<br>
  explorerContents<br>
  <br>
         ^#(<br>
                 ('hexadecimal' 16 2)<br>
                 ('octal' 8 3)<br>
                 ('binary' 2 4)) collect: [ :each | | label group |<br>
                         group := each third.<br>
+                        label := self abs printStringBase: each second.<br>
-                        label := self printStringBase: each second.<br>
                         label := label padded: #left to: (label size roundUpTo: group) with: $0.<br>
                                 label := String streamContents: [:s |<br>
+                                self negative ifTrue: [s nextPutAll: '- '].<br>
                                 (1 to: label size by: group)<br>
                                         do: [:index |<br>
                                                 1 to: group do: [:gIndex |<br>
                                                         s nextPut: (label at: index + gIndex - 1)]]<br>
                                         separatedBy: [s space]].<br>
                          <br>
                         ObjectExplorerWrapper<br>
                                 with: label<br>
                                 name: each first translated<br>
                                 model: self ]!<br>
<br>
<br>
</div>
</span></span></div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div></blockquote></div><br>
</blockquote></div>
</div></blockquote>
                                        </div></div></blockquote>
                                        </div></body>