Monday, July 18
Does this look to anyone sort of like a coherent idea?
$ s j cat foo.json bar.json | s j sort -u | s x > bar.xml
...the notion being that s
is a wrapper which parses various kinds of
structured input (JSON/YAML/XML/s-expressions/etc.), passes this to utilities
which conceptually parallel various unix commands, and spits it back out as
structured output.
The longer I look at this, the fuzzier the idea seems.
For one thing, it's not even entirely clear what the structured equivalent
of cat(1)
is, let alone things like wc(1)
or
grep(1)
. Most unix-style utilities are built around pretty minimal
and low-abstraction expectations of structure in their IO. You deal with files,
lines, columns, characters, etc. The real equivalents in terms of very
structured data might be constructs you find in modern programming languages.
Perl's foreach
, map
, grep
,
join
, split
, etc., come to mind. (Of course, there's
an obvious unix-like flavor to many of those, so maybe I'm not too far off
base.)