From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <002b01c0ca53$27545b30$e0b6c6d4@SOMA> From: "Boyd Roberts" To: <9fans@cse.psu.edu> References: <20010420075428.A6221@cackle.proxima.alt.za> <007201c0c994$81ad3990$e0b6c6d4@SOMA> <20010420163931.A6978@cackle.proxima.alt.za> <011f01c0c9dd$2ccc5d40$e0b6c6d4@SOMA> <20010421093455.D348@cackle.proxima.alt.za> Subject: Re: [9fans] Publish and be damned. MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0028_01C0CA63.E94E74E0" Date: Sat, 21 Apr 2001 13:06:43 +0200 Topicbox-Message-UUID: 881c83ce-eac9-11e9-9e20-41e7f4b1d025 C'est un message de format MIME en plusieurs parties. ------=_NextPart_000_0028_01C0CA63.E94E74E0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit From: "Lucio De Re" > I don't hold anything against using the web as an interface, but it > sucks as historical records go. It is firmly stuck in the present. > > > this is a lot faster to write and use than some random piece of > > junk on windows/unix/linux etc and is reasonably portable across > > bourne shells that support shell functions. > > > I take this to mean that SCCS, RCS and CVS are all unsuitable, in your > opinion, for source management? Here I think our opinions diverge: I > wish to retain a convenient record of changes. More about that in a > moment. no, i use revision control religiously (automated by make). i prefer RCS for text files. SCCS is a catastrophe. never used CVS; do you think they find me contracts where i could? the url should point at the current version. the author uses whatever revision control with the master version of the source, which is the url does not point to. new releases are shipped to the url. > Different schools. A friend and I once tackled a moderately simple > text processing task in AWK and C respectively. We were all > experienced programmers, but not proficient in AWK or C, just > differently so, hence the choice. text processing in C? are you mad? C is dreadful when it comes to smashing strings about. you wind up building some library so that you don't have to worry about it or you declare: char buf[N]; which is all very fine until n > N bytes get stuffed into buf. i go for the former, if i have to use C. ~15 years ago i'd have to do it in C, 'cos a 1 mip 11/780 wasn't that fast (well, our's were). this is a bit painful to use, but is doesn't break, until you run out of memory [it's old, this code]: echo flex.h sed 's/.//' >flex.h <<'//GO.SYSIN DD flex.h' -/* - * Flexible string definitions. - * - * @(#)flex.h 1.31 - */ - -#define FLEXZ 128 - -typedef struct -{ - char *f_str; - char *f_end; - char *f_ptr; -} - flex; - -#define flex_char(f, c) (*((f)->f_ptr == (f)->f_end ? flex_fill(f) : (f)->f_ptr++) = (c)) - -extern void flex_end(); -extern char *flex_fill(); -extern void flex_init(); -extern void flex_str(); -extern void flex_nstr(); //GO.SYSIN DD flex.h echo flex.c sed 's/.//' >flex.c <<'//GO.SYSIN DD flex.c' -/* - * Flexible string handling. - */ - -#ifndef lint -static char sccsid[] = "@(#)flex.c 1.31"; -#endif lint - -#include "mace.h" -#include "flex.h" - -void -flex_init(f) -register flex *f; -{ - f->f_str = f->f_ptr = salloc(FLEXZ); - f->f_end = f->f_ptr + FLEXZ; -} - -char * -flex_fill(f) -register flex *f; -{ - register int s; - - s = f->f_end - f->f_str + FLEXZ; - - f->f_str = srealloc(f->f_str, s); - f->f_end = f->f_str + s; - f->f_ptr = f->f_end - FLEXZ; - - return f->f_ptr++; -} - -void -flex_end(f) -register flex *f; -{ - f->f_ptr = f->f_str; -} - -void -flex_str(f, s) -register flex *f; -register char *s; -{ - while (*s != '\0') - flex_char(f, *s++); -} - -void -flex_nstr(f, s, n) -register flex *f; -register char *s; -register int n; -{ - while (n-- > 0 && *s != '\0') - flex_char(f, *s++); -} //GO.SYSIN DD flex.c > We finished at about the same time, with identical results, and we > were both surprised :-) yeah, but they were toys: ``a moderately simple text processing task'' after the reading the 150 or so pages of the 4 MIME RFC's [in near despair] i was faced with the choice of C or awk to 'parse' who was sending what to whom. C would've been months of work, but i worked out a way to give them [the rat squad] what they wanted with awk. so it was days of reading mime rfc's, with thoughts varying between: - they did WHAT!?! - i'll gonna hunt 'em down and shoot 'em - kill me NOW and then a coupla hours with awk. > > IIRC plan 9 was an experiment that came out of a research > > lab and in response to the question what they for version > > control, well was: > > > > /n/dump > > > That's fine where conversation is the primary communication channel. nope. you have the code. read it. that's what it's there for. > Rob can walk up to Dave and ask a question and get a reasonable > answer. But with the advent of geographically remote development, the > knowledge has to be embedded in the source code. RCS (more than CVS, > all I like about CVS is the client-server model, other things I accept > intellectually, but have no emotional ties to) and SCCS held in a > nutshell batches of changes that are related to each other in a > fashion that /n/dump cannot do. Or am I still not making sense? at SRC (in Palo Alto) and PRL (in Paris) we used a package management system [The Siphon] and this was back in the early 1990s: Francis J. Prusker and Edward P. Wobber. The Siphon: Managing distant replicated repositories. In Proceedings of the IEEE Workshop on the Management of Replicated Data. IEEE, April 1990, Also appeared as PRL Research Report 7. (PostScript). ftp://ftp.digital.com/pub/DEC/PRL/research-reports/PRL-RR-7.ps.Z distributed bug fixing. now if engineering could have just listened. i could tell you a story about ULTRIX engineering, but then i'd have to shoot you or compaq would have me for breech of confidentiality. > > on that topic i built a version of /n/dump using a program > > (to call ftw(3) and stat(2)) and some scripts (to select and > > copy the files) when i was at PRL. as fast as i could free up > > RA90's [1GB] i was headed to have the last ~30 days of all the > > user's home directories on mag disc. presented it as a WIP at a > > USENIX -- hell, ken, with phil in tow, walked in. > > > You could have been well rewarded for that, ... i was: got treated like shit by one of the researchers for weeks on end and then small thank you when he blew away some file or other. a PhD in comp sci but can't master rm(1)? > the first crisis the DOS > user encounters when moving to Unix is the inability to recover > deleted files, and a facility as you provided would have been a > godsend to many like me who had to learn the discipline of > > alias rm="rm -i" these people should be all given loaded, hair trigger .357 magnum colt pythons shipped with windows. it'd either teach them a lesson about confirmations or improve the gene pool. do knives come with a -i option? > > on top of that ran the normal backups. my version of /n/dump > > was there for when someone blew away a file that they'd created > > recently so they could go and get it themselves with cd, ls and cp. > > > Very cool, as I was saying. But only viable once disk space stopped > being the most expensive computing resource (or second, whatever, when > it was no longer as critical). for our needs IIRC we needed about 4Gb for 30 days and then it'd cycle. slowly i 'stole' RA-90's [1Gb] by shifting stuff around. now 4Gb is nothing. > For curiosity's sake, when I was at > university in the early seventies, admin and research (just under > 10000 students) shared a Univac 1106, later Univac 1110, with 50Meg of > disk space. ever heard of running vi(1) on an 11/23 with 7th Ed and RL-02s? > CVS was a bunch of scripts, and RCS was very much based on SCCS, which > I presume was a mature product, at least be the time RCS was being > undertaken. I think your points are sound, but I'm really not aiming > at immature technology, although no doubt it still has rough edges. i think you better check that 'cos IIRC: SCCS came out of USG: a dreadful piece of junk RCS was 'BSD' based: raw, small and kinda neat but useless for DNS zone file version #'s. > As I said, it is a matter of comfort zones. I have to refer to man > pages even for rudimentary shell commands, whereas I think I have a > good memory for C idioms (some of which I get wrong without fail :-) i have a selective memory: 173000g > Please write a book! ``that's not been un-thought of... so do what the subject line says. get a rapid prototype, see how it goes, fix/improve it, loop. if i get some peace in the next few days, i might do some real work. 10 years, 7 days, ~20 hours in this 'police action'. i have a firefight to attend to first, so the rest is on hold. obradovitch takes his war kinda serious -- Pettibone's Law, John, Keene ------=_NextPart_000_0028_01C0CA63.E94E74E0 Content-Type: image/jpeg; name="3.jpg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="3.jpg" /9j/4RK7RXhpZgAASUkqAAgAAAAKAA8BAgAFAAAAhgAAABABAgAMAAAAjAAAABIBAwABAAAAAQAA ABoBBQABAAAAmAAAABsBBQABAAAAoAAAACgBAwABAAAAAgAAADEBAgAYAAAAqAAAADIBAgAUAAAA wAAAABMCAwABAAAAAQAAAGmHBAABAAAA1AAAAIwBAABTT05ZAABQaWN0dXJlR2VhcgCA/AoAECcA AID8CgAQJwAAUGljdHVyZUdlYXIgVmVyc2lvbiA0LjEAMjAwMTowNDoxNiAyMzo1OTo0MQAJAACQ BwAEAAAAMDIxMAOQAgAUAAAARgEAAASQAgAUAAAAWgEAAAGRBwAEAAAAAQIDAACgBwAEAAAAMDEw MAGgAwABAAAAAQAAAAKgBAABAAAAywAAAAOgBAABAAAAXgAAAAWgBAABAAAAbgEAAAAAAAAyMDAx OjA0OjE2IDIzOjU5OjQxADIwMDE6MDQ6MTYgMjM6NTk6NDEAAgABAAIABAAAAFI5OAACAAcABAAA ADAxMDAAAAAABgADAQMAAQAAAAYAAAAaAQUAAQAAANoBAAAbAQUAAQAAAOIBAAAoAQMAAQAAAAIA AAABAgQAAQAAAOoBAAACAgQAAQAAAMkQAAAAAAAAgPwKABAnAACA/AoAECcAAP/Y/9sAxQAHBQUG BQQHBgUGCAcHCAoRCwoJCQoVDxAMERgVGhkYFRgXGx4nIRsdJR0XGCIuIiUoKSssKxogMDMvKjMn KysqAQcICAoJChQLCxQqHBgcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioCBwgICgkKFAsLFCocGBwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKv/EAaIAAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKCxAAAgED AwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRol JicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWW l5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3 +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 tp/Hs+l2rkSLHpEkmGfoSwO0dAOfagD39FaC0VfmmaNMe7kD+Zryq58A6x8UdZg1bx8JtL0myuS1 poGVYuoyA8rKcbjweCeCR3oA9R0/TrLSbFLLTLSG0to87IYECIuTk4A46mrNABRQAUUAFFADJ4Y7 i3kgmXdHKpRhnqCMGvkXV/2d/Ei/EuTS9NtRJo0konW6jcKIrdpMEAseXUHGOpxmgD6m8MeGdM8I +H7bR9Ft1htoFxwOXbuzHuTWvQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQAUUAFFABRQ AUUAFFABRQB//9n/2wDFAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/8QBogAAAQUBAQEBAQEAAAAA AAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgj QrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpz dHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX 2Nna4eLj5OXm5+jp6vHy8/T19vf4+foBAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKCxEAAgEC BAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcY GRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOU lZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3 +Pn6/8AAEQgAXgDLAwEiAAIRAQMRAv/aAAwDAQACEQMRAD8A/v4ooooAKK8/+LH/AAtP/hVnxL/4 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 ------=_NextPart_000_0028_01C0CA63.E94E74E0--