About virtual machines and images...

Brian T. Rice water at tunes.org
Sun Sep 26 11:39:18 PDT 2004


Pupeno wrote:
> On Saturday September 25 2004 10:37, Brian T. Rice wrote:
> 
>>>Pupeno wrote:
>>>
>>>>Hello,
>>>>I'm new to the concept of virtual machines and images like Slate (or any
>>>>Smalltalk-like environment) use it. So, I have some newbie questions
>>>>about it. I was wondering about the development cycle of a system like
>>>>this. Normally, in my other just-compiled development, I only put the
>>>>sources in the repository, retrieve it and compile them. Here, there's
>>>>more than compile it.
>>>
>>>The step you're missing is turning these ingredients into a core for
>>>live execution. Slate does not work unless the parser, core collections
>>>and streams it depends on, the compiler, VM bindings, lexical
>>>environment, and the REPL are all loaded in to one whole system. All
>>>those libraries have to be designed with each others' interaction
>>>assumptions in mind - if they stop working for even the shortest amount
>>>of time, the whole thing stops working and crashes. We do have in mind
>>>some ways to make this more robust, but we have more work to do in other
>>>areas before this can be implemented.
> 
> 
> I fail to 'imagine' this whole thing, yet. But I still have some questions: 
> Are you working towards (is your goal) to have a complete self hosted Slate ?

Yes. That's always been the goal.

> And for me, it would me that no editing (nor exporting/importing) of source 
> outside the image ever happens. That is, one would edit objects and methods 
> (well, objects) and in some way, be able to send those new sources to a 
> repository from which the rest of the people would download and incorporate 
> without the need of regenerating the vm and the image nor stopping Slate.

Providing an editor within the image (or another image which has a model 
and interaction method with the first) has enormous benefits on 
information / development feedback. Just try Squeak sometime.

However, this is naive. Not everything has to happen "in the image", and 
in particular a source database is best kept on disk most of the time 
(which an image can manage/consult). The image is just one way to get 
integrated persistence, and is just the simplest basis to start with. It 
can't be the only word in the vocabulary, though; Squeak has evolved 
some extra methods of partitioning for good reason.

> I imagened that it would be nice to have a nice evolutive desktop/content 
> management system (for desktop and web) build over and advanced and robust 
> language that would evolve step by step, easily, not, release by release with 
> big -braking- changes like current software.
> Thanks.

Yes, this is the old Smalltalk-80 idea: "worlds" or "desktops" would be 
saved to floppy and carried from workstation to workstation, recreating 
the user's environment bit-for-bit in the same live state.

Squeak tries to do this with Projects and other tools, and can do it 
live over a network or the Internet (less so), and is really good for 
basic work, but there are stumbling blocks in it so that it does not 
scale well yet. If you haven't tried it, I suggest doing so.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: water.vcf
Type: text/x-vcard
Size: 265 bytes
Desc: not available
Url : /archives/slate/attachments/20040926/a3c14515/water.vcf


More information about the Slate mailing list