Essen ESUG experience report day 2
Rob Withers
rwithers12 at mediaone.net
Thu Aug 30 12:19:32 UTC 2001
Joseph, one problem was that EventHandler is gone. These files fix the
ginsu. The other problem I noticed is that the SWTVolume.txt is now in XML,
so if you create a repository, the base SWT won't be able to read this file
anymore.
Thank You!
- Rob
----- Original Message -----
From: "joseph pelrine" <jpelrine at balcab.ch>
To: <CampSmalltalk at mojowire.com>; <squeak-dev at lists.squeakfoundation.org>
Cc: <vwnc at cs.uiuc.edu>
Sent: Thursday, August 30, 2001 4:02 AM
Subject: Re: Essen ESUG experience report day 2
> I'd like to sincerely thank John McIntosh for his write-up of my talk. I
> hope it will serve to eliminate some of the FUD surrounding my/our work.
> I'll try to post some additions and comments to his article in the next
> few days. Sometimes the simplest ideas are the hardest to understand;-)
>
> I was also very happy after talking to Hans-Martin, where we realized
> that all his wishes and plans (layering modules, rollback to previous
> versions of methods etc.) could be very easily implemented within the
> ModSqueak "framework".
>
> The code for the June 29 ModSqueak code drop (the latest version that
> Paul and I worked on) has been available on the Stable Squeak swiki at
> http://swiki.squeakfoundation.org/stablesqueak. I will start
> describing/documenting it there. If people are interested AND if I have
> time, I could probably post the code for the remote installation demo
> too. Let me know if you want it.
>
> cheers
> - Joseph
> At 02:17 30.08.2001 , Les Tyrrell wrote:
> > I loved the stuff about ModSqueak, but where can I get it? Don't tell
> me to
> > download SWT 0.6- I've already checked, and it appears that ModSqueak
> is not
> in that.
>
> - les
>
> -- Joseph Pelrine
>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ModSqueak.rww.cs
Type: application/octet-stream
Size: 35872 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20010830/776063bb/ModSqueak.rww.obj
-------------- next part --------------
"Base: SWTTryMe0-4.image"
"Execute the following code if you don't have SUnit and RB loaded."
"
| url |
url := (RepositoryUrl fromString: 'repos://SqueakBase/SUnitConfig/0.1').
url resolve build.
url := (RepositoryUrl fromString: 'repos://SqueakBase/RefactorAndLintConfig/0.1').
url resolve build
"
"Execute all to EOF to install Ginsu"
| directoryName fileNames changesets directory file newChangeSet |
directoryName := FillInTheBlank
request: 'Directory name?'
initialAnswer: (Date today monthName asString, Date today dayOfMonth asString).
fileNames := OrderedCollection new
add: ('Base Image Extensions'->'Base Image Extensions.cs');
add: ('Script Manager'->'ScriptManager.cs');
add: ('Modules'->'Modules.cs');
add: ('Interchange Format'->'SIF.cs');
add: ('Repository'->'Repository.cs');
add: ('Module Tools'->'Module Tools.cs');
add: ('Module Tests'->'ModuleSIFAndReposTests.cs');
add: ('Quick Fixes'->'QuickFixes.cs');
add: ('Modular Squeak'->'ModSqueak.rww.cs');
yourself.
changesets := OrderedCollection new.
directory := FileDirectory default directoryNamed: directoryName.
fileNames do:
[:pair |
file := directory readOnlyFileNamed: pair value.
newChangeSet := ChangeSorter
newChangesFromStream: file
named: (FileDirectory localNameFor: pair value).
pair key = 'Modules' ifFalse: [changesets add: newChangeSet]].
toRemove := fileNames detect: [:e | e key = 'Modules'].
fileNames remove: toRemove.
(orgClass := Smalltalk at: #ModuleOrganizer) perform: #rebuildModules.
clusterClass := Smalltalk at: #Cluster.
newCluster := clusterClass perform: #named: with: 'Module Based Tools'.
pkgClass := Smalltalk at: #Package.
newCluster
perform: #addScope:
with: (pkg1 := pkgClass named: ((fileNames at: 1) key));
perform: #addScope:
with: (pkg2 := pkgClass named: ((fileNames at: 2) key));
perform: #addScope:
with: (pkg3 := pkgClass named: ((fileNames at: 3) key));
perform: #addScope:
with: (pkg4 := pkgClass named: ((fileNames at: 4) key));
perform: #addScope:
with: (pkg5 := pkgClass named: ((fileNames at: 5) key));
perform: #addScope:
with: (pkg6 := pkgClass named: ((fileNames at: 6) key));
perform: #addScope:
with: (pkg7 := pkgClass named: ((fileNames at: 7) key));
perform: #addScope:
with: (pkg8 := pkgClass named: ((fileNames at: 8) key)).
packages := OrderedCollection new
add: pkg1;
add: pkg2;
add: pkg3;
add: pkg4;
add: pkg5;
add: pkg6;
add: pkg7;
add: pkg8;
yourself.
organizer := orgClass perform: #current.
organizer perform: #addModule: with: newCluster.
readerClass := Smalltalk at: #ModuleFileOutReader.
1 to: fileNames size do:
[:i |
cs := changesets at: i.
codeStream := ReadWriteStream on: ''.
cs fileOutOn: codeStream.
codeStream reset.
reader := readerClass
perform: #onStream:module:
withArguments: (Array
with: codeStream
with: (packages at: i)).
reader perform: #fillModule]
More information about the Squeak-dev
mailing list
|