Web-friendly Smalltalk gets JavaScript upgrades

The open source Amber derivative bridges Smalltalk syntax to JavaScript code

Web-friendly Smalltalk gets JavaScript upgrades
Brocken Inaglory (CC BY-SA 3.0)

Melding Smalltalk and JavaScript for web development, the Amber language will get user experience improvements, better performance, and support for current JavaScript loaders.

Debuting in 2011, open source Amber is a Smalltalk-inspired language that compiles to JavaScript and offers interaction with JavaScript objects. “Smalltalk has a minimal and very clean syntax. It is a pure object-oriented language where everything is an object,” Amber founder Nicolas Petton said. “Its development environment is something unique: All operations happen on a live system, making prototyping and incremental improvements a breeze.

Plans for improving Amber include a focus on the user experience, with better CLI tooling and automatic upgrades on the docket, current Amber maintainer Herby Vojcik said. “There are shifts in JavaScript world, so Amber will likely try to enter the ECMAScript 6 modules bandwagon and try to play nice with latest generation of JavaScript loaders/builders.”

Also in the works are internal changes to the compiler stack to accommodate syntax additions, better documentation, new libraries, and the addition of Pharo classes and methods. The Pharo language and environment is Amber’s reference implementation.

With Amber, developers can use existing JavaScript libraries directly and pass Amber objects as parameters.”Playing nice with JavaScript also means Amber blends into JavaScript tooling,” said Vojcik. “Amber itself is set of AMD [Asynchronous Module Definition] modules and uses AMD to load other modules if needed. You can use a package manager like bower or NPM, create Amber libraries, and upload them to the package managers.”

Amber is not alone in partnering JavaScript and Smalltalk. The Maria framework does this as well and also uses MVC to build JavaScript applications.

Copyright © 2016 IDG Communications, Inc.