HN
Today

Road to Elm 1.0

Elm's creator, Evan Czaplicki, unveils compiler improvements in version 0.19.2, marking a significant step on the 'Road to 1.0'. This update dramatically boosts build speeds, making incremental compiles nearly instantaneous for an improved developer experience. The news resonates on HN as it signals active development and future innovations for a language highly regarded for its robust functional programming paradigm.

19
Score
1
Comments
#2
Highest Rank
6h
on Front Page
First Seen
Jul 6, 12:00 PM
Last Seen
Jul 6, 5:00 PM
Rank Over Time
247373

The Lowdown

Evan Czaplicki has released Elm 0.19.2, a performance-focused update that kicks off a series of small releases leading to Elm 1.0. The primary goal is to integrate a backlog of compiler improvements, starting with this patch that enhances build times and overall efficiency.

  • Elm 0.19.2 reduces incremental build times to under 400ms, aiming to keep developers focused without context switching.
  • For large projects (over 500k lines), the update results in a 20% lower copying in GC, 10% lower peak memory usage, and a 7% faster overall compilation.
  • Real-world testing showed improvements ranging from slight to a 1.9x speed increase for compiling 351 modules, reducing compile time from 4.981 seconds to 2.595 seconds.
  • Future updates will incorporate ideas from Czaplicki's work on the Acadia database compiler, including features like equatable and hashable types, delivered through a series of non-breaking releases.

This release is a patch, allowing existing Elm projects to easily upgrade and benefit from the faster build times. Developers are encouraged to try the new version and anticipate further enhancements as Elm progresses towards its 1.0 milestone.