Worth squeak changes

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Worth squeak changes

Stéphane Ducasse
Here is a list of features that we should avoid to reinvent/reimplement.
If you want to help there is space.

Stef

> From: Andreas Raab <[hidden email]>
> Date: January 2, 2010 2:32:10 PM GMT+01:00
> To: The general-purpose Squeak developers list <[hidden email]>
> Subject: [squeak-dev] Updated trunk image (Squeak3.11-8720-alpha.zip)
> Reply-To: The general-purpose Squeak developers list <[hidden email]>
>
> Folks -
>
> After a whole batch of changes, I'v put an updated trunk image up at
>
> http://ftp.squeak.org/trunk/Squeak3.11-8720-alpha.zip
>
> Loads of great new stuff in there as you can see from the summary of changes below. Since the summary is getting a bit too long for my taste, I'm starting to only include the three most recent updates in email - if you want the full list please download the image and refer to the full summary in the "What's new" window. And if people disagree with this policy I'd be happy to change it again - I'm just trying to cut down on the spam factor a little. So let me know what you think.
>
> Cheers,
> - Andreas
>
> (for the full history refer to the "What's new" section in the image)
>
> [------------------------- 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.
>


**** already in the bugtracker => 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.
>

**** we should have a look  => 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.
>

**** already in Pharo => 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.
>
> [------------------------- updated 12/12/09 ---------------------------]
>
> Image Version
> -------------
> The new version scheme is now active. The image version number is the sum of all package versions. A stub package "Squeak-Version" has been added to define the "base" number for the version. This image is designated as "Squeak3.11.alpha".
>


In general we should have a look at ToolBuilder improvements
> Morphic
> -------
> New window resizers better in tone with the general UI look. A new UserDialogBoxMorph for simple modal inform/confirm dialogs.
>


**** we should have a look  => Files
>
> -----
> StandardFilestream now performs read-buffering, dramatically speading up some operations like "Object compileAll" (2x improvement) as well as various other operations (scanning change lists etc).
>

**** we should have a look  => Numbers
>
> -------
> Implementations for Float #predecessor, #successor etc. Update to the compact class indexes of LargePositiveInteger and LargeNegativeInteger for Cog. Additional tests for all of the new features.
>
> **** already in Pharo  => Exceptions
> ----------
> OutOfMemory has been added as a standard exception being signaled when an allocation fails, replacing the previous signaling of the low space semaphore.


**** we should have a look  =>
> Improved #ensure: performance avoiding remote context manipulation (via #tempAt:put:) in the default case.
>
> SUnit
> -----
> Faster execution by speeding up some low level operations (like allTestSelectors). Fixes for thumbnail creation which would leave open morphs around after some tests.
>


**** Martin is working on that I imagine   => Kernel
>
> ------
> The default hash for all objects is now a scaled identity has to avoid extreme degradations in speed when using large numbers of objects without explicit hash implementation in Dictionary and Set.
>
> [------------------------- updated 11/28/09 ---------------------------]
>
> Menu Bar
> --------
> Squeak now has a standard menu bar to make it easier to discover its contents for new users, replacing the World menu as the prime source for launching tools and other activities.


> **** from pharo =>  Compiler
> --------
> Support for literal ByteArray syntax has been added. Byte arrays can now be written as #[1 2 3 "..."] instead of #(1 2 3) asByteArray  avoiding the need for conversion and a more compact default representation.
>

> *** in pharo => Numbers
> -------
> Some prime related changed: Integer>>isPrime is now a deterministic test, Integer>>isProbablyPrime a probabilistic variant. Intger>>highBit and Integer>>lowBit have been sped up significantly.
>

*** in pharo => CRLF Handling
>
> -------------
> CR and LF are now treated interchangeably in rendering. Both cause a line break and both are not displayed. Various line related methods have been updated to deal with both CR and LF.
>


> Collections
> -----------
> Dictionary is no longer a subclass of Set. HashedCollection is the new superclass for both Set and Dictionary.

***Normally in pharo but not sure
> Conversion of OrderedCollection and SortedCollection to Arrays has been sped up significantly.
>
>






_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project