[Cuis] Wrapper for file access in different Smalltalk dialects

Edgar J. De Cleene edgardec2005 at gmail.com
Fri May 29 06:03:07 CDT 2015


Yes, put in Core if possible.
Welcome Masashi-san and FileMan was one old times favorite


On 5/28/15, 9:21 AM, "Juan Vuletich" <juan at jvuletich.org> wrote:

> Hi Masashi-san,

On 5/26/2015 11:34 PM, Masashi UMEZAWA wrote:
> Hi all,
>
> I
> think it is nice if FileMan is on the core package repository.
>
> FileMan for
> Cuis (and Squeak) has minimum dependencies to the existing
> FileDirectory and
> DirectoryEntry. FileMan selectively uses a few
> methods of them.
>
> So we
> can gradually adopt FileMan interfaces and trim the
> FileDirectory and
> DirectoryEntry's non-intuitive methods.
>
> Another way of cleaning-up the
> file-related classes is to port
> FileSystems to Cuis.
> But since Cuis is a
> lightweight Smalltalk dialect, FileSystems might
> be an overkill.
>
> Best
> regards,
Thank you!

Having a better, simpler filesystem api would be a good
> improvement. 
Being it multi-dialect is even better.

We can adopt
> Masashi-san's FileMan as an optional package, or if we 
agree, we can just
> include it in the base image and start converting 
existing code to use it.
> Please take a good look at it
> 
https://github.com/mumez/Cuis-Smalltalk-FileMan

After some time, we can
> start converting FileMan so it doesn't use 
FileDirectory at all. Then we can
> just completely remove the old api.

Thoughts?
Juan Vuletich

> 2015-05-19
> 9:42 GMT+09:00 Juan Vuletich<juan at jvuletich.org>:
>> Hi Folks,
>>
>> I
> apologize for talking before taking even a quick look, but anyway, We'd
>>
> take a good look at this. And seriously consider replacing files stuff in>>
> Cuis base. Or at least adopting it as a core package in our repo.
>>
>>
> Thoughts?
>>
>> Masashi-san: opinions?
>>
>> Thanks,
>> Juan Vuletich
>>
>>
>>
> On 5/17/2015 12:07 PM, H. Hirzel wrote:
>>> Below are the comments from the
> FileMan package.
>>>
>>> Question: How do you compare the FileMan package to
> the FileSystem
>>> package in Pharo?
>>>
>>>
>>>
>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Core.pck.s
> t#L45
>>> I represent a single file entry (including directory).
>>> You can
> write data by #fileContents: , and read the data by #fileContents.
>>> ---
>>>
> mu 11/6/2006 20:21!
>>>
>>>
>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Core.pck.s
> t#L53
>>> I represent a single file directory.
>>> I implement various
> directory specific behaviors.
>>> You can write data by #at:put: , and read
> the data by #at:.
>>> ---
>>> mu 11/6/2006 20:21
>>>
>>>
>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Core.pck.s
> t#L63
>>> !FmFileIOAccessor commentStamp: '<historical>' prior: 0!
>>> I am an
> accessor to the low level file IO.
>>> You can extend/rewrite me if you port
> FileMan to other Smalltalk dialects.
>>>
>>>
>>>
>>>
>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Example.pc
> k.st#L44
>>> !FmBackupDirectoryEntry commentStamp: 'mu 5/4/2007 23:26' prior:
> 0!
>>> This is a simple example for adding special behaviors to
> FmDirectoryEntry.
>>> I backup file contents automatically, while users are
> not conscious about
>>> that.
>>> Usage:
>>> dir := './withBackup'
> asDirectoryEntry: FmBackupDirectoryEntry.
>>> dir at: 'text' put: 'abc'.
>>>
> dir at: 'text' put: 'def'.
>>> (dir at: 'text') inspect. "def"
>>> (dir
> backupAt: 'text') inspect. "abc"
>>> ((dir / 'sub') at: 'text2' put:
> '123').
>>> ((dir / 'sub') at: 'text2' put: '456').
>>> ((dir / 'sub') at:
> 'text2') inspect. "456"
>>> ((dir / 'sub') backupAt: 'text2') inspect.
> "123"
>>>
>>>
>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Example.pc
> k.st#L63
>>> This is a simple example for adding special behaviors to
> FmDirectoryEntry.
>>> I put and get file contents as gzipped, while users are
> not conscious
>>> about that.
>>> Usage:
>>> | dir |
>>> dir := './gzipped2'
> asDirectoryEntry: FmGZipDirectoryEntry.
>>> dir binaryAt: 'bin' put: #(1 2 3
> 12 34 56) asByteArray.
>>> (dir binaryAt: 'bin') inspect.
>>> dir at: 'text'
> put: 'This will be gzipped'.
>>> (dir at: 'text') inspect.
>>> I would be
> useful for storing/loading big contents in a simple
>>> dictionary-like
> manner.
>>>
>>>
>>>
>>> On 5/17/15, H. Hirzel<hannes.hirzel at gmail.com>
> wrote:
>>>> Hello Masashi-san
>>>>
>>>> I'd like to come back to your FileMan
> package
>>>>
>>>> https://github.com/mumez/Cuis-Smalltalk-FileMan
>>>>
>>>>
> and ask a question.
>>>>
>>>> Is this package a port from somewhere or did you
> write it from scratch?
>>>>
>>>> Some background information is
> appreciated.
>>>>
>>>> There is no description
>>>>
>>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan/blob/master/FileMan-Example.pc
> k.st#L2
>>>>
>>>> Thank you in advance
>>>>
>>>> Hannes Hirzel
>>>>
>>>>
>>>>
> On 5/2/14, Masashi UMEZAWA<ume at blueplane.jp>   wrote:
>>>>> Hi
> all,
>>>>>
>>>>> Thank you for the kind words. I've just started Cuis on
> March, and I
>>>>> was impressed with its cleanness, simplicity, etc.
>>>>> So
> I did a introductory presentation at Tokyo Smalltalkers meeting. It
>>>>> was
> successful.
>>>>> Now I'm planning to port Folktale (telnet-base object
> shell), and SIXX
>>>>> to Cuis. My pace maybe slow, but please stay tuned.
> ;)
>>>>>
>>>>> Best regards,
>>>>>
>>>>> 2014-05-02 1:05 GMT+09:00 Germán
> Arduino<garduino at gmail.com>:
>>>>>> Wow, I was completely unaware of Masashi
> working in Cuis! Welcome
>>>>>> aboard!!
>>>>>>
>>>>>>
>>>>>> 2014-05-01 12:19
> GMT-03:00 H. Hirzel<hannes.hirzel at gmail.com>:
>>>>>>
>>>>>>> Thank you for the
> link to  Masashi Umezawa's presentation.
>>>>>>>
>>>>>>> It is from 2014 and
> talks about
>>>>>>>
>>>>>>> - the number of classes compared to Squeak and
> Pharo
>>>>>>> - the size of Morphic -- Morph allSelectors size "=>
> 502"
>>>>>>> - something I do not fully get about instance variables
>>>>>>>
> 'bounds owner submorphs fullBounds color extension'
>>>>>>>
> versus
>>>>>>>       'owner submorphs location layoutNeeded layoutSpec
> properties'
>>>>>>> - layoutSpec
>>>>>>> - PackageInfo
>>>>>>> - version
> control with git
>>>>>>> - Feature require: '<PackageName>'.
>>>>>>> - your
> Unicode package
>>>>>>>
> https://github.com/KenDickey/Cuis-Smalltalk-Unicode
>>>>>>> -
> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-StyledTextEditor
>>>>>>> -
> How to query for other Cuis-Smalltalk repositories
>>>>>>>
> https://github.com/search?q=cuis-smalltalk
>>>>>>>
>>>>>>> All things which we
> will include Cuis documentation effort.
>>>>>>>
>>>>>>>
> --Hannes
>>>>>>>
>>>>>>> On 5/1/14, Ken Dickey<Ken.Dickey at whidbey.com>
> wrote:
>>>>>>>> On Thu, 1 May 2014 07:28:54 +0000
>>>>>>>> "H.
> Hirzel"<hannes.hirzel at gmail.com>   wrote:
>>>>>>>>
>>>>>>>>> A noteworthy
> effort
>>>>>>>>>
>>>>>>>>>
> https://github.com/mumez/Cuis-Smalltalk-FileMan
>>>>>>>> Yes.  Masashi Umezawa
> is the man in Japan!
>>>>>>>>
>>>>>>>> He should introduce
> himself.
>>>>>>>>
>>>>>>>> He gave a talk about Cuis at the 63rd Smalltalkers'
> meeting in Tokyo:
>>>>>>>>
>>>>>>>>
>>>>>>>>
> http://www.smalltalk-users.jp/Home/gao-zhi/dai63kaismalltalkbenkyoukai/shiryou
> 
>>>>>>>>
>>>>>>>> Masashi has ported several packages to
> CUis.
>>>>>>>>
>>>>>>>> Because of Unicode interest, I was made aware that
> recent font tweaks
>>>>>>>> have
>>>>>>>> broken my Unicode package in the
> latest Cuis versions.
>>>>>>>>
>>>>>>>> Masashi-san, would you care to tell us
> about yourself and what people
>>>>>>>> there
>>>>>>>> think about
> Cuis?
>>>>>>>>
>>>>>>>> -KenD
>>>
> _______________________________________________
>>> Cuis mailing list
>>>
> Cuis at jvuletich.org
>>>
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
>>
>
>


____________
> ___________________________________
Cuis mailing
> list
Cuis at jvuletich.org
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.o
> rg







More information about the Cuis mailing list