Question

I have a set files with extension .sll (not ssl) that we are trying to figure out (we have permission to do whatever with them)

These are supposed to be Smalltalk files, but from what I can tell these might be Serena PVCS files (with Smalltalk content?) as the first line (editing out binary stuff looks like):

VOL1000 ... 06/10/2005 15:03:50b ... Repository: r004 (PVCS)

which makes me think that these could be Serena (or Synergex?) PVCS files. Does anyone have experience with this file type? Am I correct in this? Is there a way to parse them?

I have a query into Serena asking the same questions, but from my web searches it seems that this software is pricey and not very good either.

THANKS!

Was it helpful?

Solution 2

The files are from Visual Smalltalk. They contain binary code, objects and perhaps sources for the code. See the answer from @Hermán for a better explanation.

The referencen to "PVCS" suggest that they were created with the Enterprice editions (Visual Smalltalk Enterprice). This product used PVCS for the (built-in) version control system.

OTHER TIPS

I don't know about Serena, but in the case of Smalltalk SLLs are Smalltalk Linked Library files. If you have Visual Smalltalk (VSE) you may load them from File -> Install menu. To load them you probably need a file named vdevw.exe.

SLL's are containers for objects. Objects in SLLs were saved in precise order for proper loading and in binary format, this means that loading is as fast as loading a virtual image, and a lot faster than a File In operation. For example, if the SLL already have initialized class variables or pool dictionaries, their values could be already available without any need of manual initialization.

This means that an application could be modular by loading or unloading parts by demand. SLL's may contain developement tools also. You may also look for files with .bnd extension, which contains the loading order of SLL's.

About difference with Fuel: VSE was the first Smalltalk with these modularization features, although today most Smalltalks have something similar. I've used Fuel as a serialization library, but I suppose that may be used as a modularization library too.

A SLL can be dynamically bindable to an image, and become statically bound after saving the application image. SLLs could be independent of the virtual machine and compiler. I don't know how Fuel matches these features right now.

A difference in VSE is the image is an .EXE file, very useful to rapid application deployment. And the application could decide what SLL to load from a potentially big image. In VSE for example to access developement tools you launch the vdevw.exe which loads the image (v.exe) and the developement SLLs. If you don't have the vdevw.exe you may never access developement objects even if you have the SLLs (although your application may loads them "manually").

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top