Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!sun-barr!male!pitstop!robv From: robv@pitstop.West.Sun.COM (Rob Vollum) Newsgroups: comp.lang.lisp Subject: Re: Tired C programmer (Really configuration files) Keywords: LispM vs UNIX as an OS Message-ID: <656@pitstop.West.Sun.COM> Date: 4 May 89 15:54:07 GMT References: <1989Apr30.183925.19847@cs.rochester.edu> Reply-To: rvollum@sun.com (Rob Vollum) Distribution: na Organization: Sun Microsystems, Inc., Lexington, MA Lines: 69 In article <1989Apr30.183925.19847@cs.rochester.edu> miller@CS.ROCHESTER.EDU (Brad Miller) writes: >Actually, I'd say it's more sophisticated: the lispms employ "transparent >networking" which is considerably more efficient than UNIX. editing/copying >a file on the lispm, e.g. from the INTERNET is (for the user) the same as >editing copying locally. You don't run FTP, then copy the file, then edit >it... and that's a trivial example. I'm sorry, but I've got to disagree here. While LispM networking may be more convenient than FTP, it is definitely not transparent -- you've still got to know what machines your files live on. For "transparent networking", look at NFS, which is supported by any "serious" UNIX, which allows a user to build his own logical filesystem, using pieces of other filesystems around the network. Then there is no need to know where anything lives for copying, editing, etc. Compare the LispM's (ed "some-other-machine:>foo>hacks>bar.lisp") to "emacs /usr/robv/hacks/bar.lisp" for transparency. Given enough bandwidth, NFS can work over wide area networks as well, giving the same transparency. During the summer olympics in S. Korea, Sun consultants and Kodak folks used NFS to build logical "single view of the world" file systems from systems in Korea, London, and New York. Allowing for the requisite satellite latency, users had no idea where a file they were editing *really* lived! >as for awk and piping, who needs additional languages? When I >need e.g. the output of one function to be the input of another, I write it >that way in lisp to a lisp listener, and I don't need to know yet another >shell language to do it. You just get used to writing a lot of two-liners to >do stuff; if you find yourself doing some particular thing often enuff, put >it in your init file. (You can even make it a "command"). You're missing the point. First of all, using UNIX pipes is not learning another language. Secondly, the real use of pipes is not the processing by one command of the single result of a former command. In that case, you're right; function composition in Lisp is reasonable. The real power of pipes comes in the processing by a second function a *stream* (or "uninstantiated file") of information produced by a former function; e.g. "grep foo bar.lisp | wc -l". Granted, it can be done by creating a custom command that sends all output to a stream, then passes that stream to another command, but this is no where near as trivial as you are trying to make it out to be, and is not as general as having a pipe mechanism available to you. >I do site admin at our site for both Symbolics and Explorer hosts, including >their interface to the UNIX world. This for roughly a dozen lisp machines, >and I do it in roughly 10% of my weekly time[*] (the rest spent on what I >*really* do here). Contrarywise, back when we had that many UNIX machines >(Sun 2/120s and Vax 750s) we had two full time UNIXoids doing site admin on >them. Admitably, we now have even more UNIX machines, but really only one >environment (Sun 3); we still have 1.5 full timers doing UNIX maintainance >and a manager. I'm handling two environments in *much* less time than that, >and expect no real problems should we get, for example an XL400 which >requires different binaries than the 3600 series. Again, you're comparing apples to oranges. The emphasis when using a LispM is *not* on network services and connectivity (I didn't say that you don't use networks; it's just not the emphasis). A LispM is a single user, non-secure environment, so clearly there's less to do. Add a user? Only if you feel like it. When you get down to editing LispM namespaces, it can get pretty disgusting as well. Don't get me wrong here -- I've worked for both Symbolics and TI, and am a dedicated Lisp hacker. I use Lisp for a great deal of my current Sun programming, because Lisp is a great language. I've just recognized that UNIX (as an OS) has alot of good functionality as well, that you just won't find on a LispM. What's really needed is a good Lisp programming environment (for program development/debugging) on top of a real OS (that manages filesystems, networks, users, etc). Rob Vollum Sun Microsystems, Lexington, MA ...sun!sunne!robv