[Pharo-dev] [ANN] Amber 0.11.0 released!
petton.nicolas at gmail.com
Tue Jul 9 10:25:59 EDT 2013
Amber 0.11.0 released!
* About the release
Three months have passed and we are happy to announce the release
of Amber 0.11.0!
Some numbers about this release: 433 commits by 13 committers,
increasing the number of core committers to 25. 50 unit tests
were added to the kernel, bringing us to 313 unit tests in total.
Since the last release 60 issues were closed, bringing us to 499
This release includes a lot of bug fixes, improvements to the
CLI, as well as a preview of the next IDE, named Helios. Amber
now also uses a CI server .
To try the Helios, the new IDE, open the helios.html page, or
evaluate in any other amber page `amber.loadHelios()`.
The compiler also received some improvements, especially
regarding message send optimisations and super sends.
Here's the list of commits and closed issues:
There is a lot more to come with Helios, a stepping debugger
based on the AST is in progress and currently in the 'debugger'
branch on GitHub.
* Installing Amber from NPM
To install amber from NPM, run
npm install amber
* Migration from Amber 0.10.0
Amber compiled code should be compatible with Amber 0.10.0, but
recompiling is needed in order to get contexts working:
Compiler new recompile: (Package named: 'MyPackage') classes.
(Package named: 'MyPackage') commit
* API changes
* AnnouncementSubscription use #valuable: instead of #block: (deprecated)
* AbstractCodeGenerator inherits from Object, not NodeVisitor
* replace >>printString with >>printOn:
* replace >>storeString with >>printString
* PackageLoader is now PackageHandler (>>commit: >>setupPackagenamed:prefix: >>ajaxPutAt:data:
* Package>>fetch: is now Package>>load:
* Package>>fetch:prefix: is now Package>>load:prefix:
* Queue>>front replaced by Queue>>next
* Queue>>frontIfAbsent: replaced by Queue>>nextIfAbsent:
* Queue>>back: replaced by Queue>>nextPut:
* smalltalk.addMethod() does not use explicit JS selector
* JSObjectProxy>>forwardMessage: replaced by explicit JSObjectProxy>>forwardMessage:withArguments:
+ inlined Block now also responds to >>value:
+ Parser: split literal into runtimeLiteral and parseTimeLiteral
+ Parser: write #(4 #(5 6 #()) 7) as #(4 (5 6 ()) 7)
+ Parser: write #(#on:do: #Object) as #(on:do: Object)
+ Parser: Symbols for binarie selectores
+ ClassMoved Announcemen class
- Compiler-IR.st >>nextPutVar:
- Kernel-Collections.st >>asSuperSelector
- Symbol class (replaced with String)
- IRInlinedNonLocalReturn class
- IRNonLocalReturnInliner class
We hope you join us in developing Amber and having fun! Fork at
github, join in #amber-lang on freenode and hop onto the mailing
The Amber crew
More information about the Pharo-dev