[Newbie Alert] really dumb question

Ali Chamas dragonmystics at yahoo.com.au
Thu Apr 20 01:17:47 UTC 2000


Welcome John,

--- John Denver <magesmail at yahoo.com> wrote:
> I want the following effect.
> 1.i create a category in which i create new classes,
> play around with them till I am satisfied.

In Smalltalk, there is a concept called a "Change
Set". There can be many change sets present in any
Smalltalk image, and they basically record all of the
modifications that you do to the image from the point
of creating that change set onwards. If you click on
the Squeak desktop, you get a main menu. Choosing the
"open" item, and then the "simple change sorter" will
open up a single view change set window. You'll see
all of the change sets there that other programmers
have created, and when you check out the menu for that
window, you'll see that there is an option for a "new
change set...". There is also a "make changes go to
me" item which establishes the currently selected
change set as the active one in use. Every time you
accept a new class definition, a new method or
whatever in a browser, those details are moved into
the change set. Basically, the change set is like
documenting all the things you did to the image
(code-wise) to put it in it's current state. Imagine
that when the system files in the change set, it's
actually building back that code into the image, thus
restoring your established state.
Once you create a new change set, and make the changes
go to it, create a new category in a browser called
"MyCategory". Within that category, you'll make new
classes, modify existing, and all of this work get's
recorded in your change set. So if you create a stack
of classes, and extent exisitng ones in other
categories, the entire effort is recorded in full
detail (have a look at the info that the change set
holds).

> 2.When i'm done I file out this category (let's call
> it MyCategory) and I get a nice MyCategory.st file.

Go to your "MyCategory" change set, and choose "file
out" from the window menu. A MyCategory.cs file will
be created in the same folder as Squeak. This is now
your own personal copy of all the work you did on-top
of the existing image, ready to be filed back into
another image. Remember that all of the changes you
did to anything, be it a new class, an existing class,
renaming, whatever, will be constructed by Squeak as
it reads in the change set.

> 3.I exit squeak *without* saving!!
If you're building up an image, then just save. The
good thing about Smalltalk, is that you can treat an
image as your development world. You don't always use
one image, you may have a folder full of em. You might
also be developing a sub-system in one, file it out,
and then file it back into a new fresh clean compacted
one, ready for distribution.

> 4,When I start squeak again I want to open the
> MyCategory.st file and invoke a "filein".
> What I want to do is for this category to appear in
> the Browser window so I can continue adding classes
> etc.

Once you file back in, if it isn't already a defined
change set, it'll be added to the change set
collection. Don't forget to "make changes go to me",
so that any further work you do is being sent to that
change set.

No Worries,
Ali.

_____________________________________________________________________________
http://clubs.yahoo.com.au - Yahoo! Australia & NZ Clubs
- Got an interest? Build a Club.





More information about the Squeak-dev mailing list