Scala.js version 1.0.0 released: Compile Scala to JavaScript code

Share
  • February 26, 2020

Scala.js is a dialect of Scala which compiles Scala source code to JavaScript code. The 1.0.0 version arrived on February 25, 2020, after seven years of development.

From the announcement blog:

Scala.js 1.0.0 is the culmination of our efforts to simplify, specify, and future-proof all aspects of Scala.js, from the language semantics to the internal APIs, so that there is nothing left to take away.

Users should take note that the 1.0.0 release includes a number of breaking changes that are incompatible with 0.6x. In the 1.0.0 announcement post, users are recommended that they upgrade to version 0.6.32 or later and address all breaking changes before moving forward with the update.

SEE ALSO: Python web framework JustPy – interactive websites without JavaScript

1.0.0 enhancements

This release mainly focused on “simplifying Scala.js” and future-proofing it, instead of adding new features, so there is a short list of new enhancements and improvements.

The new enhancements include:

  • Access require and other “global” variables of special JavaScript environments
  • Easily declare inner classes in native JS classes
  • Declare non-native JS classes inside outer classes or inside defs, and use their js.constructorOf
  • Run-time performance improvements

Version 1.0.0 fixes various bugs and resolves open issues as well.

     

    International JavaScript Conference
    Manfred Steyer

    The Future of Angular and your Architectures with Ivy

    by Manfred Steyer (SOFTWAREarchitekt.at)

    Andrey Goncharov

    React: Lifting state up is killing your app

    by Andrey Goncharov (Hazelcast)

     

    Scala.js overview

    Compared to similar languages that compile to JavaScript, (such as TypeScript) Scala.js includes more language features, such as an optimizing compiler, extensive standard libraries, macros, and a strong type system. It offers interoperability, so users can use any JavaScript library directly from their Scala.js code, including React and Angular JS.

    The IDE helps catch most errors and typos without having to compile your code.

    scala.js

    IDE error resolution. Source.

    JavaScript developers can view the comparison between Scala.js code and JavaScript code and get started with the hands-on tutorials. Or, test it out in the browser and create a small program with ScalaFiddle, an online playground. Simply write some Scala code and press the Run button to begin compiling.

    A number of project skeletons are available so you can begin playing around with Scala.js as soon as possible.

    Getting started requires a recent version of Java JDK and SBT. View the repository on GitHub.

    SEE ALSO: Mint programming language is an alternative to JavaScript for writing single page apps

    A look back

    Back in 2013, we interviewed the creator of Scala.js, Sébastien Doeraene about the compiler’s origins and what it aims to achieve. Did it achieve its goal? Take a look back and see how far this compiler has come from its v0.1 infancy.

    Why did Doeraene begin the project? From the interview:

     It was not my idea, actually. When I applied for a position in LAMP, the Programming Methods Laboratory at EPFL, aka the Scala Team, Martin Odersky suggested that I work on a JavaScript compiler backend. As I already had experience with writing a backend for Scala targeting a dynamically typed language (with my previous work on Ozma), I had a head start to make this happen. Besides, I love Scala, and I love writing compilers, so I was super excited to start on this project. The fact that a lot of people are really excited about this is also highly motivating.

    What will it add in the next release?

    The post Scala.js version 1.0.0 released: Compile Scala to JavaScript code appeared first on JAXenter.

Source : JAXenter