From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_00,PDS_OTHER_BAD_TLD autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,e219d94b946dfc26 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Newsgroups: comp.lang.ada Subject: Re: Ada.Command_Line and wildcards References: <45dcaed8_6@news.bluewin.ch> <1172132169.423514.271890@s48g2000cws.googlegroups.com> <545bgvF1ttrphU1@mid.individual.net> <1495406.QZvfpqijrQ@linux1.krischik.com> <6dy7mn3hhu.fsf@hod.lan.m-e-leypold.de> <1172328891.5496.62.camel@localhost.localdomain> <1173096982.3712.37.camel@localhost> <8utzwzzv0v.fsf@hod.lan.m-e-leypold.de> <1173185771.11841.69.camel@localhost> <11wk29zr0.fsf@hod.lan.m-e-leypold.de> <1173305192.29628.82.camel@localhost> <1173447204.5618.131.camel@localhost.localdomain> <8g649apcio.fsf@hod.lan.m-e-leypold.de> From: Markus E Leypold Organization: N/A Date: Fri, 09 Mar 2007 20:02:21 +0100 Message-ID: User-Agent: Some cool user agent (SCUG) Cancel-Lock: sha1:rD7+QjLqxYwSu5pqGmIBcnQomlc= MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii NNTP-Posting-Host: 88.72.201.211 X-Trace: news.arcor-ip.de 1173466565 88.72.201.211 (9 Mar 2007 19:56:05 +0200) X-Complaints-To: abuse@arcor-ip.de Path: g2news1.google.com!news3.google.com!news.glorb.com!news.motzarella.org!newsfeed.kamp.net!newsfeed.kamp.net!newsfeed.freenet.de!news.tu-darmstadt.de!newsfeed.hanau.net!news-fra1.dfn.de!newsfeed.arcor-ip.de!news.arcor-ip.de!not-for-mail Xref: g2news1.google.com comp.lang.ada:14436 Date: 2007-03-09T20:02:21+01:00 List-Id: "Dmitry A. Kazakov" writes: > On Fri, 09 Mar 2007 18:11:59 +0100, Markus E Leypold wrote: > >> I wouldn't want to use Ada as an interactive command language. > > Why not? I never could understand why anybody would need phyton to > configure Ada projects... > > But "interactive command language" is nonsense in these days. There exist > far better ways of interaction with human beings than command languages. > They are a legacy of teleprinters. Sorry, you just lost most of you points. What was the last time one of those "better methods" enabled me to > >> There >> are, I think, ways to get (1) type safety, (2) proper quoting without >> too much overhead. I, personally, would built a new generation shell >> system on, ahem, OCaml, because of the type interference and because >> functional composition might take the part pipes have played in the >> past. Something like >> >> dir "/etc/fstab" | dir_purge (fun f -> newer_than (2006,08,11) f.date ) | flatten | print dir_entry_long > > Huh, but the above looks quite untyped. > A properly typed object named > "fstab" would not need special "dir" to enumerate its members. I wanted to write "/etc", but you know, the difference is between a _name_ and the object bound under that name. I somehow abhor the idea of filesystems which are completely statically bound. > Even less it would need pipes to communicate its members to > procedures. Tcha. You missed the definition of (|) in this case. It's basically the function composition operator, not a pipe. >> dir "/etc/fstab" | dir_purge (fun f -> newer_than (2006,08,11) f.date ) is >> dir_purge (fun f -> newer_than (2006,08,11) f.date ) (dir "/etc/fstab" ) but easier to read for people thinking in sequences of transformations. > It already has > these members in it. And why do you construct a new set before printing, if > you have closures? What have closure to do with printing? And BTW, that was a mockup. There are perhaps even ways to eliminate "print" in the toplevel, not only flatten. Flatten, BTW is sometimes needed (because of the type system) to convert trees onto lists. Wether I really need it in this case I haven't completely figured out yet. > The same old flawed UNIX ideology? (:-)) Oh, forgive me. Next time I ask you. Not. Regards -- Markus