[Pharo-project] Fuel version 1.4 uses #isBinary, and SIXX uses #tab:
FLBufferedWriteStream>>sizeBuffer: calls #isBinary, which is not currently implemented by FSWriteStream - probably because #isBinary is not specified by ANSI. Is there a reason why the stream is not always binary? Also, when using SIXX with FSWriteStream, I had to add the non-ANSI #tab: method to FSWriteStream. There's probably a dozen calls to #tab: in the SIXX code. Should #tab: be added to FSWriteStream somehow? Maybe a non-ANSI streams extension package?
On Mon, Jun 13, 2011 at 11:52 PM, Yanni Chiu <yanni@rogers.com> wrote:
FLBufferedWriteStream>>sizeBuffer: calls #isBinary, which is not currently implemented by FSWriteStream - probably because #isBinary is not specified by ANSI. Is there a reason why the stream is not always binary?
I think no and I think you are correct. Fuel is binary, and FLBufferedWriteStream is only for Fuel, so we remove that #isBinary. Martin, do you agree?
Also, when using SIXX with FSWriteStream, I had to add the non-ANSI #tab: method to FSWriteStream. There's probably a dozen calls to #tab: in the SIXX code. Should #tab: be added to FSWriteStream somehow? Maybe a non-ANSI streams extension package?
Esteban Lorenzano wanted also to use Colin's FileSystem in Fuel instead of the regular streams and that's why we have created the package FuelFileSystem. So you can add all the methods you want to FSWriteStream under a category *FuelFileSystem. I can give you commit access to Fuel repo if you want. I still don't understand why you cannot directly serialize/materialize the PRKernel instance. -- Mariano http://marianopeck.wordpress.com
On 13/06/11 6:00 PM, Mariano Martinez Peck wrote:
Esteban Lorenzano wanted also to use Colin's FileSystem in Fuel instead of the regular streams and that's why we have created the package FuelFileSystem. So you can add all the methods you want to FSWriteStream under a category *FuelFileSystem. I can give you commit access to Fuel repo if you want.
Since FileSystem is still under development, I'd hope that FuelFileSystem would be unnecessary - useful protocol would be added to FileSystem directly (or its usage would be avoided by Fuel). The only issue I've had so far is the #isBinary call.
I still don't understand why you cannot directly serialize/materialize the PRKernel instance.
That does work, so I'm surprised about the test case too. One test case does a single snapshot, which works. The other test case does three snapshots, and fails when trying to do the second snapshot (due to the KeyNotFound error described in the other post). I'm almost done, so I'll push the code somewhere soon.
On Mon, Jun 13, 2011 at 7:00 PM, Mariano Martinez Peck < marianopeck@gmail.com> wrote:
On Mon, Jun 13, 2011 at 11:52 PM, Yanni Chiu <yanni@rogers.com> wrote:
FLBufferedWriteStream>>sizeBuffer: calls #isBinary, which is not currently implemented by FSWriteStream - probably because #isBinary is not specified by ANSI. Is there a reason why the stream is not always binary?
I think no and I think you are correct. Fuel is binary, and FLBufferedWriteStream is only for Fuel, so we remove that #isBinary. Martin, do you agree?
Yes, I agree. You know more than me about the buffered stream. The only objection I see is the open issue we have about supporting an alternative text format in Fuel... How can I put a String in a FSWriteStream?
Also, when using SIXX with FSWriteStream, I had to add the non-ANSI #tab: method to FSWriteStream. There's probably a dozen calls to #tab: in the SIXX code. Should #tab: be added to FSWriteStream somehow? Maybe a non-ANSI streams extension package?
Esteban Lorenzano wanted also to use Colin's FileSystem in Fuel instead of the regular streams and that's why we have created the package FuelFileSystem. So you can add all the methods you want to FSWriteStream under a category *FuelFileSystem. I can give you commit access to Fuel repo if you want.
I still don't understand why you cannot directly serialize/materialize the PRKernel instance.
-- Mariano http://marianopeck.wordpress.com
On 14/06/11 2:56 AM, Martin Dias wrote:
The only objection I see is the open issue we have about supporting an alternative text format in Fuel...
Do you mean a non-binary file alternative format?
How can I put a String in a FSWriteStream?
I don't have the answer, but I'm sure that that the answer has to take into account the character encoding. IMO, the encoding should be specified in some header, and if not specified there, it should be assumed to be UTF-8.
On Tue, Jun 14, 2011 at 4:39 PM, Yanni Chiu <yanni@rogers.com> wrote:
On 14/06/11 2:56 AM, Martin Dias wrote:
The only objection I see is the open issue we have about supporting an alternative text format in Fuel...
Do you mean a non-binary file alternative format?
Yes. At the beginning of Fuel we thought that it would be cool to be able to serialize in both kinds, text based and binary. So for example for debugging we can serialize in text and when deploying or using it in real situations, we use a binary format. However, we never thought if that is possible nor how to do it. And it is not in our near future to do it.... If someone wants to give it a try ;)
How can I put a String in a FSWriteStream?
I don't have the answer, but I'm sure that that the answer has to take into account the character encoding. IMO, the encoding should be specified in some header, and if not specified there, it should be assumed to be UTF-8.
-- Mariano http://marianopeck.wordpress.com
participants (3)
-
Mariano Martinez Peck -
Martin Dias -
Yanni Chiu