Updated trunk image

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

Updated trunk image

Andreas.Raab
Folks -

After a nice batch of new stuff over the last two weeks, I've uploaded a
fully updated trunk image to:

   http://ftp.squeak.org/trunk/Squeak3.10.2-Trunk-091128.zip

Below the summary of this version.

Cheers,
   - Andreas

This is a list of the main achievements that went into the trunk image.
The list is in reverse chronological order, newest additions on the top:

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

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.

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.

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. Conversion of OrderedCollection
and SortedCollection to Arrays has been sped up significantly.

[------------------------- updated 11/14/09 ---------------------------]

Kernel
------
Support for isolation layers has been retired. "self-evaluation" as a
concept has been removed since every object can be forced to be
self-evaluating by asking for its storeString.

Projects
--------
Project refactoring are an ongoing process. Project itself has been
split into Project / MVCProject / MorphicProject such that Project
itself is abstract and various requests are handled properly in the
subclasses.

Collections
-----------
Several improvements have been added to Collections. Sets have become
faster, Arrays now print in brace form by default, Dictionary>>keys
return an array instead of a set.

Monticello
----------
Various load-order issues have been fixed within Monticello, making
loading of packages more robust. Monticello and PackageInfo have been
sped up in several areas making browsing of large repositories
significantly faster.

Faster UTF-8 Conversions
------------------------
Generalize trick from ByteString>>#squeakToUtf8 to every converter using
class instance variables. Dramatically improves performance of file
operations.

FaceLift
--------
An adaptation of Newspeak's Facelift look has been added to Squeak under
the code name of "Botox" (meaning a small set of carefully chosen
injections to improve the out of the box look for Squeak).

Shout
-----
Shout (Syntax Hightlighting As You Type) has been added to this image.
As with all new additions, it can be easily unloaded for people wanting
smaller images.

ToolBuilder conversion
----------------------
All the tools have been given a make-over, removing pretty much all of
the interface construction code and replacing it by ToolBuilder specs.
This removes a huge amount of dependencies between the tools and
particular UI frameworks, and puts all the UIs on equal footing (there
were several tools that were either not all or only partially supported
in MVC before).

New Text Editors
----------------
A complete new set of text editors (Editor, TextEditor and
SmalltalkEditor) are available. They replace TextMorphEditor and break
one of the last hard links between Morphic and MVC. With the new editors
it will finally become possible to have Morphic be self-contained
without the need to rely on portions of MVC.

Morphic Text Improvements
-------------------------
Morphic has now regular blinking insertion point cursors instead of the
(virtually invisible) static cursor previously. In addition, various
problems with mixing fonts and the heights of text have been fixed.

Preference Pragmas
------------------
Preference pragmas simplify dealing with preferences by providing
automatic discovery for preferences defined in your classes. No more
littering Preferences; you can now define preferences local to your
class and store the values in regular class variables. The preference
gets automatically discovered by using the
<preference:category:description:type:> pragma.

Beautiful, Anti-Aliased Fonts
-----------------------------
We have a new set of beautiful anti-aliased Deja Vu bitmap fonts in this
image. The default sizes include 7pt (for handheld devices), 9pt
(generic text, list and menu fonts) as well as 12pt (window and title
fonts):
        Deja Vu 7pt: Regular, Bold, Italics
        Deja Vu 9pt: Regular, Bold, Italics
        Deja Vu 12pt: Regular, Bold, Italics

Russian Language Support
------------------------
To input text in Russian language, install a font supporting the
Cyrillic alphabet, then switch the locale accordingly:

        TTFileDescription installFamilyNamed: 'Arial'.
        Locale switchToID: (LocaleID isoLanguage: 'ru').

This will enable Russian text input, display and processing.

Improved Truetype Support
-------------------------
The new TTFileDescription works just like TTFontDescription but operates
on the files directly on disk. This helps greatly to support the m17n
efforts since we no longer load all the fonts into memory. To use the
available fonts on your platform, select some text, hit Cmd-k (Alt-k)
and select "More (non-portable) fonts".

Full Closure Support
--------------------
This is a closure converted image. With full closure support, you can
finally use recursive blocks like here:

        fac := [:n| n > 1 ifTrue:[n * (fac value: n-1)] ifFalse:[1]].
        fac value: 5.

and close over temps correctly, such as here:

        (1 to: 10) do:[:i| WorldState addDeferredUIMessage:[Transcript cr;
show: i]].

A new Development Model
-----------------------
This image is being developed using a new development model described at

        http://board.squeak.org/2009/07/02/a-new-community-development-model/

The image itself started as Squeak3.10.2-7179-basic.image. It was then
updated from http://source.squeak.org/trunk. In order to keep track of
ongoing development, simply hit the 'Load Code Updates' button.

Reply | Threaded
Open this post in threaded view
|

Re: Updated trunk image--can't start

Ross Boylan-2
Andreas Raab wrote:
> Folks -
>
> After a nice batch of new stuff over the last two weeks, I've uploaded
> a fully updated trunk image to:
>
>   http://ftp.squeak.org/trunk/Squeak3.10.2-Trunk-091128.zip
I am unable to get the resultant image to run.  Steps:
1. download file
2. extract the 2 files in it into the same directory as squeak.exe in a
directory created from the current windows download
Squeak3.10.2-7179-win32.zip.
3. Click  on image.

A popup ("Squeak: please select an image file"--standard windows
chooser) asks me to select an image.  If I pick the stock one, it
starts.  If I pick the new (trunk) one I get an alert (title "Squeak!")
saying "Count not open the Squeak image file ....".

I've tried the download and the opening several times.  I tried
launching the image from a separate directory, and dragging it onto the
squeak.exe icon.

Do I need a different VM?

Ross


Reply | Threaded
Open this post in threaded view
|

Re: Updated trunk image--can't start

Levente Uzonyi-2
On Sun, 29 Nov 2009, Ross Boylan wrote:

> Andreas Raab wrote:
>> Folks -
>>
>> After a nice batch of new stuff over the last two weeks, I've uploaded a
>> fully updated trunk image to:
>>
>>   http://ftp.squeak.org/trunk/Squeak3.10.2-Trunk-091128.zip
> I am unable to get the resultant image to run.  Steps:
> 1. download file
> 2. extract the 2 files in it into the same directory as squeak.exe in a
> directory created from the current windows download
> Squeak3.10.2-7179-win32.zip.
> 3. Click  on image.
>
> A popup ("Squeak: please select an image file"--standard windows chooser)
> asks me to select an image.  If I pick the stock one, it starts.  If I pick
> the new (trunk) one I get an alert (title "Squeak!") saying "Count not open
> the Squeak image file ....".
>
> I've tried the download and the opening several times.  I tried launching the
> image from a separate directory, and dragging it onto the squeak.exe icon.
>
> Do I need a different VM?

Yes, you need a vm with closure support. You can get the latest here:
http://squeakvm.org/win32/release/SqueakVM-Win32-3.11.5-bin.zip

Levente

>
> Ross
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Updated trunk image: Editors

Ross Boylan
In reply to this post by Andreas.Raab
On Sat, 2009-11-28 at 19:33 -0800, Andreas Raab wrote:

>
> New Text Editors
> ----------------
> A complete new set of text editors (Editor, TextEditor and
> SmalltalkEditor) are available. They replace TextMorphEditor and
> break
> one of the last hard links between Morphic and MVC. With the new
> editors
> it will finally become possible to have Morphic be self-contained
> without the need to rely on portions of MVC.
The class comment for Editor includes a tantalizing reference to
SimpleEditor:

"SimpleEditor provides basic functionality for single line text editing.
It does not handle fonts and styles, aligning and Smalltalk utilities.
It handles one single line."

There is no such class in the image.  Is it available somewhere?  Coming
soon?

BTW, the latest image seems to use the old editors unless you explicitly
reset them with "TextMorph defaultEditorClass: TextEditor."

Thanks, Levente, for the tip about the VM.
Ross


Reply | Threaded
Open this post in threaded view
|

Re: Updated trunk image: Editors

Andreas.Raab
Ross Boylan wrote:
> "SimpleEditor provides basic functionality for single line text editing.
> It does not handle fonts and styles, aligning and Smalltalk utilities.
> It handles one single line."
>
> There is no such class in the image.  Is it available somewhere?  Coming
> soon?

All of these classes come from Cuis.

> BTW, the latest image seems to use the old editors unless you explicitly
> reset them with "TextMorph defaultEditorClass: TextEditor."

Good catch. I'm must've reset the preference somehow. Thanks for
reporting this, we need to run the new editors so they get milage.

Cheers,
   - Andreas