Cuis uses a standard chunk file format[1] with a file per package.

Given the fact that no two Smalltalk dialects share a common class creation protocol makes simply using chunk file format a non-starter.

Squeak uses FileTree.

As part of his work on Cypress 2.0 Martin McClure is planning on supporting a file per class disk format in addition to the file per method format and possibly a file per package format.

I'm not sure whether Martin is at the point where he is ready to share his plans, but this is a problem that is being worked on and when Martin is ready for feedback he'll publish his spec.

Dale

[1] https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev/blob/master/Packages/Assessments.pck.st

On 5/21/17 8:25 AM, Stephan Eggermont wrote:
At the PharoDays I was painfully reminded that SSDs perform really badly when 
using small files. The Bloc tutorial used a github filetree repo and that has a 
lot of files. The whole folder is 116 MB in 16K files. Copying that amount of 
data should not be noticable, taking about a third of a second. With it being 
in so many files, it took more than half a minute, or a hundred times as long.

That is too much overhead. How can we improve the file format in a way that 
keeps the cross-platform exchange advantages and a reasonable way to view diffs 
and propose small changes using the github web tools?

Cuis uses a different format with git. How does that compare? What is used in 
Squeak?

Stephan



Reply via email to