Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site zehntel.UUCP Path: utzoo!watmath!clyde!floyd!harpo!seismo!hao!hplabs!zehntel!berry From: berry@zehntel.UUCP Newsgroups: net.cog-eng Subject: Re: A proposal - (nf) Message-ID: <1324@zehntel.UUCP> Date: Tue, 28-Feb-84 04:21:31 EST Article-I.D.: zehntel.1324 Posted: Tue Feb 28 04:21:31 1984 Date-Received: Fri, 2-Mar-84 16:15:19 EST Sender: berry@zehntel.UUCP Organization: Zehntel Inc., Walnut Creek, CA Lines: 160 #R:gatech:-383600:zinfandel:21200001:000:5415 zinfandel!berry Feb 15 10:27:00 1984 OK, I guess it's time for me to come out of the closet (no, not THAT kind of closet, this isn't net.motss... :-) and reveal the truth about my implementation of Jon Mauney's adventure/zork shell idea. I asked about it at UniForum to find out who thought it up so I could give proper credit, and the cat's now out of the bag. I have received three requests for distribution kits so far -- only three because our modems have been flakey again lately. I first read his article in (I believe) Human-Nets, and found it interesting, if a bit silly. It fermented in the back of my mind for a while until Mark Wittenberg got the Concurrent Euclid package from U of Toronto. He rewrote the Euclid parser-generator 'S/SL' in C, and, I think, will talk about it in Salt Lake City (but don't quote me) I thought it looked neat (it's a LOT faster than YACC!) and cast about for a 'small' project that could use it, strictly as an educational project for myself. Guess what I picked. I cannot redistribute S/SL without Mark's permission, so I cannot distribute 'ash' (as I call it) in a form in which you can modify the parser, but I can distribute the parse-table interpreter, and the rest of MY code. It has never run on anything but a VAX with 4.1bsd, but should port cleanly. It needs the new directory stuff hacked in, I will probably do this before releasing it. S/SL and the parse table interpreter have run on 11's with and without overlays, Vaxen, z8000 and 68000's. The current source is about 500 1k blocks, so I would rather not post it to net.sources. Interested parties should either send me a tape or write or call to arrange a one-time uucp feed (YOU pay the phone bill!). I am not entirely satisfied with the performance of 'ash' -- syntax error recovery leaves something to be desired. This is strictly 'as is'. I was internding to submit a paper to the summer Usenix and submit this for the tape -- I may yet. I make NO warranties, express or implied, as to the merchantibility or fitness for any purpose of this software, and expressly disclaim all responsibility for any damages, actual, physical or virtual, done by using this software. This software is to be considered in the public domain and may not be redistributed for commercial advantage unless I get a cut. (and Jon too, what the heck.) Noncommercial distribution is OK, if you leave the credits for Jon and myself intact. This program has actually been successfuly run as a login shell -- installed in a user's '/etc/passwd' line and everything. OK, now here is an actual session with 'ash', lightly edited to change filenames to preserve my privacy. No other editing was done: Script started on Wed Feb 15 10:12:32 1984 Warning: no access to tty; thus no job control in this shell... Zin 1$ ash Welcome to Zehntel Adventure UN*X This wonderful idea courtesy of Jon (no middle name) Mauney Assistant Professor of Computer Science North Carolina State University (who is available for consulting at reasonable rates) This implementation courtesy of Berry Kercheval, who is available for consultation at unreasonable rates You are in /cc/berry, a large directory. There are many files here. look You are in /cc/berry. There is a directory net here. There is a file CLU here. There is a file mbox here. There is a directory src here. There is a directory admin here. There is a directory sys here. There is a directory bbk here. There is a directory bin here. There is a directory post_office here. There is a file uucp-project here. There is a directory path here. There is a directory routes here. There is a directory UNET here. There is a directory news here. There is a file ar.out here. take ar.out GRUNT! ;The grunt indicates the file was large You have an ar.out. up You are in /cc. There are many files here. up You are in /, a large directory. There are many files here. go to tmp You are in /tmp. There are many files here. inventory you are carrying: an ar.out drop ar.out You have dropped an ar.out. ;permissions are restored correctly Whew! That one was heavy! look You are in /tmp. There is a file Ex25262 here. There is a file Rx25262 here. There is a file ,RCSt1025474 here. There is a file nf24053 here. There is a file ctm164234 here. There is a file nfxmit19601 here. There is a file ctm055275 here. There is a file Ex25375 here. There is a file Rx25375 here. There is a file ,RCSci025474 here. There is a file ar.out here. kill ar.out The ar.out vanishes in a puff of greasy black smoke. goto /etc You are in /etc, a large directory. There are many files here. kill passwd The passwd deftly parries an almost certain mortal blow. ;Can't kill ;this one! home You are in /cc/berry, a large directory. There are many files here. goto src/ash You are in /cc/berry/src/ash, a large directory. There are many files here. attack ash with make ;you can remake ash inside itself -- ;actually do 'useful' work! 'ash' is up to date Attack succeeded! quit You scored 14 points. You are obviously a rank amateur. To become a hacker you need another 42 points. Zin 2$ script done on Wed Feb 15 10:15:29 1984 And of course, my address: Berry Kercheval Zehntel Inc. 2625 Shadelands Drive Walnut Creek, CA 94598 (415)932-6900 ihnp4!zehntel!berry (mail directed to zehntel!barry will be forwarded properly...) Please include return postage with tapes.