Patternia v0.6.1 Release Note¶
Release Date: December 20, 2025 Version: 0.6.1
Overview¶
Patternia v0.6.1 focused on evaluation semantics, forwarding behavior, and API clarity.
This page has been normalized to the current API surface. The original release note described the removed chained termination flow and the removed compact case-pack form.
Highlights¶
Value Category Preservation¶
match() continued to preserve the subject category needed for binding and
handler invocation.
using namespace ptn;
int classify(std::vector<int> &&values) {
return match(std::move(values)) | on(
$() >> [](std::vector<int> &&xs) {
return xs.empty() ? 0 : 1;
},
_ >> 0
);
}
Fallback Discipline¶
This release period clarified a rule that still applies after the builder cleanup: total matches should make the fallback explicit in the case list.
using namespace ptn;
const char *day_name(int day) {
return match(day) | on(
lit(1) >> "Monday",
lit(2) >> "Tuesday",
_ >> "invalid"
);
}
Diagnostics Direction¶
The project kept moving toward earlier validation and clearer compile-time feedback for malformed matches.
What Still Matters¶
match(subject)remains the single public entry point.- A final
_case is the current total-match form. - Diagnostics should steer users toward a single obvious spelling.
Historical Note¶
The original v0.6.1 page covered removed termination helpers and the removed compact direct-entry form. Those APIs have been removed from the current repository. The underlying semantics now appear only through pipeline matching.