Ecosystem & Release Blog

Stay up to date with the latest features, releases, and guides from the Ferrite core team.

Announcing Ferrite v2.3.1: Closures, Guards, & Setup Wizards

We are excited to release Ferrite v2.3.1! This release is packed with compiler features, syntax improvements, and ecosystem setups. Highlights include lexical closures, enum guard clauses, skip/stop loops control, and the new setup wizard.

Lexical Closures

First-class functions can now capture variables from their outer scope. This unlocks functional programming patterns directly in Ferrite:


keep multiplier = 2;
keep double: fun(int)->int = (x: int) => x * multiplier;
                                

Advanced Loop Control

We added `skip` and `stop` keywords, aligning Ferrite's iteration structure with standard loop controls (corresponding to `continue` and `break` in traditional C-like syntaxes).

New Setup Installer

Our Windows installation experience has been rewritten. The setup wizard now properly publishes vendor parameters, configures environment paths, and resolves standard SDK files directly.

Ferrite v2.2.0: Hardened Type Checks & Traits

Ferrite's compiler type check has been hardened. We've introduced explicit interfaces called Traits, which can be custom-implemented on structural Groups to support clean code architectures.

Traits establish code contract standards. In this release, the static analyzer ensures that all trait functions are fully implemented, preventing runtime resolution errors in native compiled binaries.

Why We Built Ferrite: An ML-First Systems Language

In this post, we discuss the design philosophy behind Ferrite, how it handles compilation pathways, and why compiled tensor validation is the future of neural network engineering.

Traditional machine learning flows suffer from "shape bugs" that arise hours into training. Ferrite's strict compiler verifies matrix sizes *before* compilation, saving GPU resources and developer time.