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/As... 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