Re:Microfeatures I'd like to see in more languages
by wbadart on Thursday January 05, 2023 @11:01PM
(#34270803)
In Haskell, if all the functions in the pipeline are pure, I'd probably write that as
wood
& measure 12
& cut 40 WZ
& sand 220
& paint Red
See https://hackage.haskell.org/package/base-4.17.0.0/docs/Data-...
paint(sand(cut(measure(wood, 12), 40, :WZ), 220), :red)
wood | measure(12) | cut(40, :WZ) | sand(220) | paint(:red)
IIRC you can do that in Haskell as well, but I forget the name of the feature. Many OOP libraries have started to adopt a chained method call style similar to this, but it is nice to be able to do with any function.