[squeak-dev] Updated trunk image (Squeak3.11-9622-alpha.zip)
Andreas Raab
andreas.raab at gmx.de
Sat Mar 6 20:20:02 UTC 2010
Folks -
With lots of good stuff going in, I've put an updated trunk image up on:
http://ftp.squeak.org/trunk/Squeak3.11-9622-alpha.zip
As an experiment, I've also put up an image that has all known packages
unloaded:
http://ftp.squeak.org/trunk/Squeak3.11-9622-core.zip
The latter marks an imporant mile stone for me - it's the first Squeak
image below 10MB since Squeak 3.6 (I think).
The summary of latest changes is below.
Cheers,
- Andreas
(for the full history refer to the "What's new" section in the image)
[------------------------- updated 03/06/10 ---------------------------]
SmalltalkImage refactoring
--------------------------
SystemDictionary and SmalltalkImage have been refactored. Smalltalk is
now an instance of SmalltalkImage, representing a facade for system-wide
queries and actions. SmalltalkImage contains a global environment, an
instance of SystemDictionary, which the environment used by classes.
Thus, SmalltalkImage current == Smalltalk, Object environment ==
Smalltalk globals.
Tools
-----
MessageTrace, a subclass of MessageSet has been added. MessageTrace
allows senders and implementors to be viewed without opening new windows
all the time. It utilizes a new AlternatePluggableListMorphOfMany,
which allows quick and easy customization of the list. A quick adoption
of DependencyBrowser has been added allowing to browse dependencies
between packages.
Unicode Leading Char
--------------------
The default leading char is now 0 instead of 255 making Unicode - UTF
conversions stable. See also discussion at
http://lists.squeakfoundation.org/pipermail/squeak-dev/2009-August/138915.html
New Cleanup protocol
--------------------
A new general cleanup protocol has been added. The cleanUp protocol
takes an optional argument to indicate whether we're doing an aggressive
cleanup (which involves deleting projects, change sets, and possibly
other destructive actions) or a more gentle cleanup that's only supposed
to clean out transient caches.
Compiler
--------
Selectors including minus are now parsed correctly, for example 3 <- 4
is now parsed as (3) <- (4) instead of (3) < (-4). White space is no
longer allowed after an unary minus to denote a negative number literal.
Modularity
----------
MVC is now reloadable and has been added to the list of unloadable
packages in Smalltalk unloadAllKnownPackages.
Syntax Highlighting
-------------------
Syntax highlighting is now supported in both Monticello tools and
workspaces. In workspaces it can be turned off explicitly in the window
menu if the workspace doesn't hold code.
Kernel
------
Unwind blocks are now run to completion if a process is in the process
of executing an unwind when it is terminated. This prevents
unpredictable unwind handling in some edge cases.
Files
-----
DirectoryEntry has been refactored. It is no longer in the collection
hierarchy, knows its own directory, and has been split into
DirectoryEntryFile and DirectoryEntryDirectory to deal with the
differences between files and directories. Added a terse,
platform-independent way of expressing FileDirectory concatenation via
the #/ operator has been added:
myFileDirectory / 'subDir' / 'sub-subDir'
[------------------------- updated 02/13/10 ---------------------------]
Generators
----------
A Generator transforms a callback interface into a stream interface.
This is helpful when a producer provides output in form of a callback
(block) but a consumer expects the input to be a stream. A Generator
transforms one interface into the other, for example:
| generator |
generator := Generator on:[:g| Integer primesUpTo: 10000
do:[:prime| g yield: prime]].
[generator atEnd] whileFalse:[Transcript cr; show: generator next].
Number parsing
--------------
New number parsing facilities are available. NumberParser and its
subclasses provide support for parsing and building numbers from strings
and streams. NumberParser offers an extensible framework for different
numeric formats.
Text Editor improvements
------------------------
The auto-indent preference has been restored. Indent and outdent now
function with LF as well. Cmd-1 through Cmd-4 (Alt-1 through Alt-4) can
now be used to paste method arguments directly in code.
Installer update
----------------
Installer has been updated to the latest version which includes support
for automatically parsing mantis bug reports and operating on them, for
example:
Installer mantis bugsAll select:[:bug| bug status = 'feedback'].
Sets with nil
-------------
Sets can now contain any element, including nil. This is achieved by
adding the ability to wrap elements when storing them in a set which can
be useful for other objects (like proxies) as well.
[------------------------- updated 01/23/10 ---------------------------]
Modularity
----------
The following packages have been made reloadable: ReleaseBuilder,
ScriptLoader, 311Deprecated, 39Deprecated, Universes, SMLoader, SMBase,
Installer-Core, VersionNumberTests, VersionNumber, Services-Base,
PreferenceBrowser, Nebraska, CollectionsTests, GraphicsTests,
KernelTests, MorphicTests, MultilingualTests, NetworkTests, ToolsTests,
TraitsTests, XML-Parser, Traits, SystemChangeNotification-Tests,
FlexibleVocabularies, EToys, Protocols, Tests, SUnitGUI. To unload all
of these, execute:
Smalltalk unloadAllKnownPackages.
More information about the Squeak-dev
mailing list
|