Hacker News new | ask | show | jobs
by int_19h 3205 days ago
Object-oriented piping is actually somewhat problematic, because objects carry behavior, not just data. This means that everyone in the pipeline now has to agree on the semantics of that behavior - in case of PowerShell, they need to understand and talk the .NET object model, for example.

A much more lightweight approach is to exchange structured data. This can even be easily done on top of existing byte streams, just standardizing the format.

FreeBSD started adopting this approach via libxo for its base utilities: https://github.com/Juniper/libxo. I hope it spreads into Linux.