The Flux architecture abides by a single unidirectional data-flow throughout the entire application. This provides us with a host of benefits, ranging from easier to reason about code, to clearer testing strategies. However, one issue we faced in our recently updated interface tradesmen use to communicate with customers, was how to handle asynchronous calls within these constraints. Throughout this post I wish to guide you through the iterative design decisions made, along with the resulting abstractions and boundaries.
Having an hour to spare recently I decided to solve the common problem of converting from Hindu-Arabic to Roman numerals.
This weekend I have had the chance to explore Cartesian products. The Cartesian product (cross-product) is essentially an operation which returns a product set from multiple supplied sets.
Whilst completing the Functional Programming Principles in Scala course a couple of years ago one of the exercises was in the realm of Peano numbers. This subject fascinated me, how we were able to represent non-negative natural numbers without any preformed concepts - relying solely on the logical expressions and recursive algorithms.
With the addition of the
However, it should be noted that this is nothing more than syntactic sugar over an extremely expressive and flexible language construct.