You do realize that Rust, C#/F#, Kotlin/Scala, now Java to an extent, pretty much all FP and many other languages have extensive pattern matching support?
You can use it to execute a series of functions returning `either`-ish tuples and build up a railway oriented program.