Gleam, a type-safe and scalable language for the Erlang virtual machine and JavaScript runtimes, released version 1.19.0. This version no longer compiles to Erlang source code but generates Erlang abstract forms, improving compiler performance and build times. It is aimed at developers using the Erlang virtual machine and JavaScript runtimes.
What happened
Gleam, a type-safe and scalable language for the Erlang virtual machine and JavaScript runtimes, has released version 1.19.0. This version introduces a new compilation target that generates Erlang abstract forms instead of Erlang source code. This change significantly improves the performance of the compiler, reducing build times for Gleam projects running on Erlang. The new code generator also ensures that location metadata available to the runtime is accurate to the original Gleam source code, making crash reports and stacktraces more precise. Additionally, Gleam has improved support for other build tools, generating necessary .app resource files and offering new command-line options like --no-dev for the compile-package command.
FAQ
What is the new compilation target?
Gleam's Erlang code generator now outputs Erlang abstract forms instead of Erlang source code.
How does this improve build times?
The performance of the compiler has been improved, significantly reducing the build times for Gleam projects running on Erlang.
Does this affect metadata accuracy?
The location metadata available to the runtime is now accurate to original Gleam source code, rather than to the Erlang source code the compiler would generate.
Source: gleam.run

