[squeak-dev] Updated trunk image (Squeak3.11-9371-alpha.zip)

Andreas Raab andreas.raab at gmx.de
Sun Feb 14 01:34:38 UTC 2010


Folks -

Since so much has been going on, I've put an updated trunk image up on:

     http://ftp.squeak.org/trunk/Squeak3.11-9371-alpha.zip

The summary of latest changes is below.

Cheers,
   - Andreas


(for the full history refer to the "What's new" section in the image)

[------------------------- 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.

[------------------------- updated 01/02/10 ---------------------------]

NanoTraits
----------
A new traits implementation has been added. The implementation is 
significantly smaller and simpler than the old version and can be 
unloaded and reloaded without loss of information (i.e., traits 
flattened during unload are restored during traits reloading). To unload 
traits simply execute:
     Trait unloadTraits.
To restore traits load the traits package from the repository at 
source.squeak.org.

TextDiffBuilder
---------------
A new algorithm for producing text diffs has been added. The algorithm 
is smaller, faster, and provides better results compared to the previous 
implementation.

Source / Changes Files
----------------------
Sources and changes files are no longer limited to 32MB max size. 
ExpandedSourceFileArray provides an implementation for source files of 
arbitrary length, based on the CompiledMethodTrailer changes.

CompiledMethodTrailer
---------------------
Handling compiled method trailers for storing source code has been 
generalized. The new representation deals more explicitly with various 
forms of encodings (source pointer, temps-only, etc) and has room for 
future extensions (i.e., retrieval from other sources).

Future Messages
---------------
Support for the future/future: keywords has been added. Future messages 
enable sending messaging at a later point in time. Timed futures allow 
sending messages a specific number of miliseconds into the future, 
futures without arguments are executed at the earliest convenience. For 
example a message like:

MyMorph>>mouseDown: event
     self color: Color red.
     (self future: 1000) color: Color white.

will turn the given morph red and one second later back to white.





More information about the Squeak-dev mailing list