Node.js 10 was released on April 24, 2018. This version provides experimental support for asynchronously iterating over readable streams. This blog post explains how that works.
In this blog post, I describe the pros and cons of three programming languages/dialects: JavaScript, TypeScript and ReasonML. My descriptions are based on recent experiences with TypeScript and ReasonML on a few smaller real-world projects and on years of experience with JavaScript.
Update 2019-01-29: The feature set of ECMAScript 2019 is now final (source) and described in this blog post.
String.prototype.matchAll
The proposal “String.prototype.matchAll
” by Jordan Harband is currently at stage 3. This blog post explains how it works.
JavaScript never removes old features – new versions are always backward compatible. I wish we could clean it up, but staying compatible has too many benefits, as I’ll explain in this blog post.
The proposal “Numeric Separators” by Sam Goto and Rick Waldron lets us use _
as a separator in numeric literals. This blog post explains how that works.
This blog post explains patterns and techniques for external and internal iteration in ReasonML.
Functors are mappings from modules to modules. This blog post explains how they work and why they are useful.
In this blog post, we look at polymorphic variants, which are a more flexible version of normal variants. But that flexibility also makes them more complicated.