Nadav Har'El wrote:

> From these, I think that psh is far from what I'm looking for. I am not
> looking for a shell with a different syntax (in this case, Perl's syntax),
> but rather a shell whose pipelines passes not unstructured text (in a unix
> pipe) but rather structured objects.
> Such a shell would not be a more convenient way to run existing unix commands
> (I think the existing shells are already more than convenient enough),
> but rather a new way to build commands and combine them into pipeline

If you provide new "structured" pipes, you'll have to make your commands
support it, right?

So either you rewrite all of the basic "building blocks" and end up with
a completely new shell/language
( You say you want to still be able to use the old commands? Well,
there's a 'system'-like command in most scripting languages, and you can
easily parse it's output).

 Or, if you want to implement this by writing a set of cooperating new
commands for an existing shell - there's nothing stopping you right now
- regular pipes carry streams of characters - which you can use to pass
any type of data you want. One way is to use some XML language on
stdin/stdout.

  In fact, there's a (non-XML) language intended for doing that (among
other things):
see http://xparam.sourceforge.net/ -  there's builtin support for basic
types, and you can write "registration code" for any C++ class.
   The most commonly-known usage is to parse structured commandline
arguments, but  Paramsets can be just as well read from stdin and
written to stdout (or dumped to files as a form of serialization -
there's also support for more space-efficient non-human-readable
RawBytes mode). Very easy to form chains of commands if they all use
this lib.
  In the past, I had used it to pass structured data between python and
C++ programs (p.s. - I think the python interface is only in-house, but
if there's a need, it could be made free :-) ).

   AA


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to