Discussion:
Bye, bye Jtalk... Hello Amber!
(too old to reply)
Göran Krampe
2011-09-14 10:09:36 UTC
Permalink
As some of you may know there is a new Smalltalk in town - and up until
today it was called Jtalk. After a furious three week development
period after the ESUG 2011 conference (where Jtalk raised some eyebrows) we
are now making a first release humbly numbered 0.9. We are also taking the
opportunity to pick a slicker name for Jtalk - Amber!

New website is at:

http://www.amber-lang.net

So, why would you take a look at Amber?

In our opinion Amber is perfectly positioned for the HTML5 onslaught and the explosion of all-things-javascript like for example Nodejs. It is a Smalltalk that plays well with others and can seamlessly use Javascript libraries.

At the same time Amber feels like a *real* Smalltalk, the environment is all there including Workspace, Transcript, Browser, senders/implementors/references to class, TestRunner, Inspectors, code editing with syntax coloring and a Debugger. There is no image, but all compilation is incremental.

Below follows a summary of the massive changes since ESUG that triggered us to make a first release.

We hope you join us in developing Amber and having fun! There is already work being made in using Amber on top of Java using Rhino, using Amber for making games and lots more. Fork at github, join in #amber-lang on freenode and hop onto the google group:

http://groups.google.com/group/amber-lang

regards, Nicolas & Göran

(and thanks to Laurent, David, Bernat, Stefan, Raimon, Alexandre, Dale,
Juraj, Ken, Pavel and everyone else that have been involved)
---------------------------------------

Language, compiler and runtime

- New 100x faster parser built using PEGjs instead of the old parser built using PetitParser.
- New much faster ChunkParser implementation in handwritten Amber instead of using PetitParser.
- Improved parsing error report with quoted source code plus marker pinpointing parsing error.
- Removed PetitParser since it is no longer needed by Amber itself.
- Added compiler optimizations in the form of speculative inlining of specific messages and control structures.
- Added support for dynamic Arrays, just like in Squeak/Pharo.
- Added support for similar dynamic Dictionaries, not seen in other Smalltalks.
- Added & and | as allowed binary selectors and implemented them in Boolean.
- Added a Set implementation.
- Added basic support for Packages, dependency management coming soon.

...and various extensions, enhancements and bug fixes to the library
classes.


Development environment

- A working Debugger with integrated inspector, proceed etc.
- A structure with multiple different Amber environments in different directories.
- A working amberc command line compiler including a Makefile for recompiling the whole Amber.
- Enabled TestRunner in the IDE for running unit tests based on SUnit.
- Added "File in" button in Workspace to easily paste and filein source
code in chunk format in the IDE.
- Added "Rename package" and "Remove package" buttons to browser that
use the new Package model.
- Added a standalone webDAV server in Amber so that it is simpler to
get up and running and able to commit code locally.


Example code and ports

- Ported ProfStef interactive tutorial, available on Amber homepage
(www.amber-lang.net/learn.html) but also in examples directory.
- Included the ESUG presentation as an example also in the examples directory.
- Several new examples running on Node.js and webOS included, all with Makefiles.


Various other things

- Issue tracker on github now used as primary source, closed a bunch of reported issues.
- Wiki pages on github with information on how to port code from other Smalltalks, lists of articles, tutorials, roadmap and more.


Posted by Göran Krampe on behalf of Nicolas Petton.

http://www.nicolas-petton.fr
http://goran.krampe.se
steve
2011-09-14 18:15:31 UTC
Permalink
Whoa !!! Really nice !!! Can't wait to try it out...

So I am anxious to see something in my browser and tried to start Tetris
but got as walkback

I tried

Tetris new startNewGame

but this got a walkback " 13 does not understand #ifTrue:ifFalse "

but my CPU also went to 100%.
and multiple debuggers popped open.
So I killed my browser (firefox 3.6.22)

Please help...Do I need to install something?


Thanks,
Steve
steve
2011-09-14 18:26:19 UTC
Permalink
More on this walkback..

Apparently a DoesNotUnderstand results in stack overflow situation.
with unlimited debuggers opening on the error.

MessageNotUnderstood >> signal

Can't really figure out what is up because of the CPU issue.

Is there a Break Key?

Thanks !
Whoa !!! Really nice !!! Can't wait to try it out...
So I am anxious to see something in my browser and tried to start Tetris
but got as walkback
I tried
Tetris new startNewGame
but this got a walkback " 13 does not understand #ifTrue:ifFalse "
but my CPU also went to 100%.
and multiple debuggers popped open.
So I killed my browser (firefox 3.6.22)
Please help...Do I need to install something?
Thanks,
Steve
Göran Krampe
2011-09-14 22:42:55 UTC
Permalink
Post by steve
but this got a walkback " 13 does not understand #ifTrue:ifFalse "
That actually sounds like an inlining bug I fixed today. But in either case the Tetris code has not been updated unfortunately, so it has rotted. Sorry about that, Nicolas wrote that he should have removed it.

regards, Göran
steve
2011-09-15 01:14:57 UTC
Permalink
Any other visual examples I can try?
Post by Göran Krampe
Post by steve
but this got a walkback " 13 does not understand #ifTrue:ifFalse "
That actually sounds like an inlining bug I fixed today. But in either case the Tetris code has not been updated unfortunately, so it has rotted. Sorry about that, Nicolas wrote that he should have removed it.
regards, Göran
Thomas Gagne
2011-09-27 13:17:56 UTC
Permalink
I must not be understanding something. If it's server-based, why would
I need to download it? Why wouldn't it just exist somewhere on the net?
Loading...