Use blocks to define what you cant do, define or reuse an existing fold function, and you are done ... As a side effect, it can be embedded where you need it
thierry.henrio
gem "cant", "~> 0.2.2"