David,<br>That is very interesting. Thanks. I am just getting the start of the sensation you describe. Perhaps astronauts have the same problem getting used to weightlessness.<br><br>Thanks again.<br>Tom Keller<br><br><br>
<div><span class="gmail_quote">On 7/22/06, <b class="gmail_sendername">David T. Lewis</b> &lt;<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Thu, Jul 20, 2006 at 11:03:11AM -0700, Thomas Keller wrote:<br>&gt; Perhaps this is the problem?<br>&gt; When I ran this in a worksheet:<br>&gt; a _ OSProcess thisOSProcess stdOut.<br>&gt; Transcript show: a<br>&gt;<br>
&gt; show: returned &quot;nil&quot;<br>&gt; So nextPutAll: has no where to print to?<br><br>Yes, that's exactly right. Your system cannot find its standard output<br>(because it does not have the necessary platform-specific OSProcess
<br>plugin installed), so its standard output is nil. And nil is really<br>an object, like everything else in Squeak. When you send the message<br>#nextPutAll: to the nil object, the nil object responds by throwing<br>a MessageNotUnderstood error (MessageNotUnderstood is also an object,
<br>you can find in in a browser if you like). The default response to<br>a MessageNotUnderstood error is to open a debugger, which lets you<br>poke around and figure out what went wrong.<br><br>&gt; So my next question is how do I find the systems STDOUT pid?
<br><br>There are several ways to answer this, so let me start by taking<br>the question literally. With the VM and plugins you are currently<br>using, you cannot see either the pid of the process that Squeak<br>is running in, or the identity of the STDOUT steam.&nbsp;&nbsp;But not to
<br>worry, you probably don't really need either of these.<br><br>It may seem odd at first, but try to think of Squeak as a self<br>contained object environment, rather than as a program that does<br>I/O to STDOUT and to files. The Transcript usually plays the role
<br>of STDOUT in the sense that you can evaluate things and show the<br>result on the Transcript. Even more commonly, you can evaluate<br>an expression (which may invoke some computation of arbitrary<br>complexity), and &quot;inspect it&quot; to see the results directly.
<br><br>But back to being literal. If you really want to see the pid<br>of the current Squeak process, and to have access to the<br>STDOUT, STDIN, and STDERR streams, then you need to run your<br>Squeak image with a virtual machine that has the OSProcess plugin
<br>extension. You can get this from <a href="http://www.squeakvm.org/unix/">http://www.squeakvm.org/unix/</a>.<br>If you install the MacOSX VM from this page, it will provide<br>the OSProcess plugin, and if you run your Squeak image with
<br>this VM, it should do exactly what you want.<br><br>I'm glad that you are interested in OSProcess, because I wrote<br>it. But what I really hope is that you will quickly discover<br>that OSProcess is completely unnecessary for almost everything
<br>you will want to do in Squeak. In my own experience, the more I<br>became comfortable with Squeak, the less I worried about traditional<br>file I/O and the like. It's nice to be able to do that stuff<br>(hence the OSProcess extensions), but it's rarely needed once
<br>you get comfortable with the Squeak environment.<br><br>Dave<br><br>_______________________________________________<br>Beginners mailing list<br><a href="mailto:Beginners@lists.squeakfoundation.org">Beginners@lists.squeakfoundation.org
</a><br><a href="http://lists.squeakfoundation.org/mailman/listinfo/beginners">http://lists.squeakfoundation.org/mailman/listinfo/beginners</a><br></blockquote></div><br><br clear="all"><br>-- <br>Tom<br>"Ecrasez l'Infame!" -- Voltaire