[squeak-dev] how to write to stdOut and stdErr under Cog

Eliot Miranda eliot.miranda at gmail.com
Mon Sep 27 05:18:29 UTC 2010


Hi Levente,

On Sun, Sep 26, 2010 at 7:13 PM, Levente Uzonyi <leves at elte.hu> wrote:

> On Sun, 26 Sep 2010, Eliot Miranda wrote:
>
>  Hi Chris,
>>
>>   I have code for this, but right now I need to crack some crabs, so I
>> don't have time to verify this code in 4.1 :)  Use at your own risk ;)
>>  The
>> most important thing is the StandardFileStream>>stdioHandles primitive for
>> accessing the streams.  N.B. some work needs to be done on the win32
>> FilePlugin support code before this will work on Windows.
>>
>
> All three streams seem to be working on Windows Vista with the latest
> CogVM.
> This seems to be a really cool feature, though I think CrLfFileStream
> should be deprecated, so MultiByteFileStream support would be better IMO.
>

The streams work if directed to files.  But they will /not/ work if directed
to input or output in a console window.  I should have been clearer, sorry.
 The work needed is in platforms/win32/plugins/FilePlugin/sqWin32FilePrims.c
where if input and/or output is the console we need to use ReadConsole &
WriteConsole in place of ReadFile & WriteFile.

cheers
Eliot


>
> Levente
>
>
>
>>
>> On Sun, Sep 26, 2010 at 2:46 PM, Chris Muller <asqueaker at gmail.com>
>> wrote:
>>
>>  I am developing a simple "CommandLineProcessor" facade for easily
>>> transferring command-line arguments simply as block-arguments, so you
>>> can write smalltalk scripts in vi:
>>>
>>>  CommandLineProcessor do: [ : arg1 : arg2 : arg3 | "args come in as
>>> Strings" ... ]
>>>
>>> and also for directing Notifications and Warnings messages to stdOut,
>>> and Errors to stdErr.  It relies on OSProcess to write to stdOut and
>>> stdErr for this.  However, ever since switching to Cog, writing to
>>> these streams does not seem to redirect out to Linux..
>>>
>>> I don't know whether writing to these streams makes me
>>> Linux-dependent, but it really is nice to be able to write Linux
>>> scripts that employ Squeak in the back-end, but operate normally like
>>> other shell programs in the terminal window and with redirecting
>>> output, etc.
>>>
>>>  - Chris
>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20100926/d21f9d0f/attachment.htm


More information about the Squeak-dev mailing list