<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
gettimothy wrote:
<blockquote
cite="mid:142f35c448a.-5803109410292343980.-2373936524623764684@zoho.com"
type="cite">
<pre wrap=""> </pre>
<br>
<hr size="4" width="90%"><br>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
<div
style="font-size: 10pt; font-family: Verdana,Arial,Helvetica,sans-serif;">Thanks,
but its worse than that--call it initial flailing as I learn the system
level stuff.<br>
<br>
My misconception 2 was not the misconception I thought it was. It is
the difference between a BlockContext created in a MethodContext vs
that created in a DoIt.<br>
<br>
<br>
Object subclass: #MethodWithFactorialBlockContext
>>factorialExampleFromMethod<br>
| factorial |<br>
factorial := <span style="background-color: rgb(102, 204, 255);">[:n
| n = 1 ifTrue: [1] ifFalse:[(factorial value: n-1) * n]]</span>.<br>
(1 to: 10) collect: factorial.<br>
^factorial<br>
<br>
If I explore the block to the right of factorial, I get an explorer
titled: "[ ] in MethodWithFacorialBlockCo..etc..." which, I assumed
was the BlockContext "associated" with that method. Its not. It is the
same thing you get when you put the block in a Workspace and explore
that.<br>
<br>
However, if you execute that method <br>
<br>
| m |<br>
m := MethodWithFactorialBlockContext new.<br>
m factorialExampleFromMethod.<br>
<br>
it throws an error; then, exploring the BlockContext from the debugger
does show the CompiledMethod and lo-and-behold it is the same
CompiledMethod as that in the class methodDict. Just like it says in
the BlueBook.<br>
<br>
So, the lesson learned is,<u><b> </b></u><b>"when evaluating contexts,
be sure of the context you are evaluating otherwise, you may spend a
day looking at the wrong stuff and posting dumb posts to squeak-vm-dev".</b><br>
<br>
<br>
<br>
Cordially,<br>
<br>
tty<br>
</div>
</blockquote>
<br>
When things appear to be working, it could just be reinforcing your
misconceptions! Its when things fail that you learn the most.<br>
cheers -ben<br>
<br>
<blockquote
cite="mid:142f35c448a.-5803109410292343980.-2373936524623764684@zoho.com"
type="cite">
<div
style="font-size: 10pt; font-family: Verdana,Arial,Helvetica,sans-serif;"><br>
<br>
<br>
<br>
<br>
<br>
<div id="1"><br>
---- On Sat, 14 Dec 2013 14:38:15 -0800 <b>Bob
Arning<a class="moz-txt-link-rfc2396E" href="mailto:arning315@comcast.net"><arning315@comcast.net></a></b> wrote ---- <br>
</div>
<br>
<blockquote
style="border-left: 1px solid rgb(0, 0, 255); margin: 0pt 0pt 0pt 5px; padding-left: 6px;">
<div text="#000000" bgcolor="#FFFFFF"> <font face="Georgia">Just
so you are not heading astray, CM210 has *fewer* bytecodes than CM3931
and *many* of CM210's bytecodes are also in CM3931, but the former is
not a subset of the latter, either by happenstance or some sort of
magic sharing of bytecodes. They are just similar because they are
compiled from similar source code.<br>
<br>
Cheers,<br>
Bob<br>
<br>
</font>
<div>On 12/14/13 4:29 PM, gettimothy wrote:<br>
</div>
<blockquote cite="mid:142f303828b.-314795332<a href="
mailto:031519307.-4168358830043045902@zoho.com="" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:031519307.-4168358830043045902@zoho.com">031519307.-4168358830043045902@zoho.com</a>"
type="cite">2. Misconception 1 happened because I wrongly thought
the 'CompiledMethod I had highlighted was the SAME compiled method for
the method, just displayed differentyl. .They are not--its obvious now
that I know where to look. CompiledMethod(210) in the BlockContext vs
CompiledMethod(3931) in the methodDict of the test class I was using.
CompiledMethod(210) contains a subset of the bytecodes in
CompiledMethod(3931), but its header and number of literals are
different.</blockquote>
<br>
</div>
</blockquote>
<br>
</div>
</blockquote>
<br>
</body>
</html>