Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!uunet!in5.uu.net!world!blanket.mitre.org!news.mitre.org!mwunix!jcmorris From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 22 Jun 1998 22:13:30 GMT Organization: The MITRE Corporation Lines: 50 Message-ID: <6mmkua$k6v@top.mitre.org> References: <6m90t9$8k9$1@news.kth.se> <35899804.MD-0.198.no@spam.he.re> <358c2ac9.3284969@news.innet.be> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> NNTP-Posting-Host: mwunix.mitre.org lucvdv@null.net (Luc Van der Veken) writes: >Rubout does ring a bell (not the way ^G does ;), Groan... > but I [think I] >also remember seeing a setting somewhere that specified the >number of \0's to send. >Were strings usually stored as zero-terminated in the days of >teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king >and emperor on the same throne? I used some of those mechanical >things as terminals, but back then my technical knowledge about >internal data representation wasn't very deep. >If asciz was common practice, maybe that's why rubout was >preferred - sending too much of them it would make little >difference at the left margin. Well...the "standard" way to delimit strings in Ye Olde Days was a function of the preferences and prejudices of the programmer of the application being used and/or the hardware. Character- oriented systems, for example, might have an "end of record" character which could be used to delimit a string and move it with a single hardware instruction ("MOVE RECORD"), but in other computers there weren't any real standards until the monitor era was well underway and monitor-resident and/or standard subroutine packages began to push programmers to use a particular way to represent strings. Using RO as the fill character had the advantage that the same bit pattern was what you got if you were punching a tape, caught a mistake, backspaced the punch, and hit the "RUBOUT" key -- that is, the \377 character with all holes punched was interpreted as a deleted character that should be ignored. (Some early computer hardware (including the IBM async control units such as the 2702 and 2703) had hardware recognition of the RO character and never sent it to main memory -- thus saving the program from having to detect and handle the rubout.) A fill character of \0 on the other hand had the effect on the receiving printer of an open line. Depending on the design of the print element it could result in some rather violent-looking motions if you received a string of nulls, while a similar string of RO characters caused little agitation. (This obviously was a function of the hardware, and isn't directly involved with the issue of what fill character was used.) Joe Morris ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 22 Jun 1998 22:41:21 +0100 Organization: Tanglewood Message-ID: <358ECF81.447E223@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <3589614d.13728446@news.prosurfr.com> <6mdodi$c8f@top.mitre.org> <358e73b7.1392049@news.prosurfr.com> <6mm8bc$fod@top.mitre.org> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 898672927 nnrp-05:20377 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 20 Joe Morris wrote: > And while we're on the subject of the older Teletypes, how many > readers here know the origin of the BREAK function? Know it? I've actually *got* a carpenter relay somewhere. Basically if you go back to the good old current loop days, before all this RS232 stuff, break was the condition that the current loop broke. In the same way that when Morse was nailing the necks of bottles to trees between Washington & Baltimore, "Line Up" and "Line Down" had a rather literal meaning. "A man dressed as a Kwaker" anyone? -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 22 Jun 1998 22:59:20 +0100 Organization: Tanglewood Message-ID: <358ED3B8.414B9C90@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <35899804.MD-0.198.no@spam.he.re> <358c2ac9.3284969@news.innet.be> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 898672941 nnrp-05:20377 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 41 Luc Van der Veken wrote: > Were strings usually stored as zero-terminated in the days of > teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king > and emperor on the same throne? I used some of those mechanical In two words "dealer's choice". Bear in mind that not all computers in the period used ASCII internally, certainly the Honeywells and ICL in the period had private internal 6-bit sets, and IBM has EBCDIC. When I started using DEC kit ('73), it used ASCII internally, but expected IIRC byte counts to be available, hang on... .WRITE - Write the next record in the dataset. Macro Call: .WRITE #LNKBLK,#BUFHDR where LNKBLK is the address of the Link Block, and BUFHDR is the address of the line buffer header. Assembly Language Expansion: MOV #BUFHDR,-(SP) MOV #LNKBLK,-(SP) EMT 2 Basically the link block if functionally equivalent to the thingy that fopen hands you, and the buffer header was a three or four word header, consisting of the buffer size (2 bytes), transfer mode (1 byte), completion status (1 byte), actual count of bytes transferred (2 bytes) and optionally, if a bit was set in the mode a 2 byte pointer to the data. If the bit wasn't set then the data directly follows the header. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### Newsgroups: alt.folklore.computers Subject: Re: slash / backslash References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> Organization: Wizvax Communications, Troy, NY. USA From: multics@wizvax.wizvax.net (Richard Shetron) NNTP-Posting-Host: 199.181.141.1 Message-ID: <3590ff8c.0@news.wizvax.net> Date: 24 Jun 1998 09:30:52 -0500 X-Trace: 24 Jun 1998 09:30:52 -0500, 199.181.141.1 Lines: 19 Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newspeer.monmouth.com!newsfeed.wizvax.net!news.wizvax.net!wizvax.wizvax.net!multics In article <358ED3B8.414B9C90@tnglwood.demon.co.uk>, Robert Billing wrote: >Luc Van der Veken wrote: > >> Were strings usually stored as zero-terminated in the days of >> teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king >> and emperor on the same throne? I used some of those mechanical > > In two words "dealer's choice". Bear in mind that not all computers in >the period used ASCII internally, certainly the Honeywells and ICL in >the period had private internal 6-bit sets, and IBM has EBCDIC. [snip] Of all the languages I've used, only C and C++ use zero-terminated character arrays. All the others that have a 'string' type variable use 'byte' counts. I find these languages much more useful for doing character manipulation then C/C++ as I often work with string data that can include an all zero byte. ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!feed2.news.erols.com!erols!news.ultranet.com!not-for-mail From: "dave porter" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 24 Jun 1998 13:50:25 GMT Organization: none of the above Lines: 32 Message-ID: <01bd9f76$fa470e80$0ba17392@glastonbury> References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> <3590ff8c.0@news.wizvax.net> NNTP-Posting-Host: 146.115.161.11 X-Complaints-To: abuse@ultra.net X-Ultra-Time: 24 Jun 1998 13:50:25 GMT X-Newsreader: Microsoft Internet News 4.70.1161 It was a common format in the TOPS-10 monitor (e.g. the OUTSTR UUO expected an ASCIIZ string) dave (Tell that to the young people today and they won't believe you...) -- For email, please remove the 'w' from my address. Sorry. Richard Shetron wrote in article <3590ff8c.0@news.wizvax.net>... > In article <358ED3B8.414B9C90@tnglwood.demon.co.uk>, > Robert Billing wrote: > >Luc Van der Veken wrote: > > > >> Were strings usually stored as zero-terminated in the days of > >> teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king > >> and emperor on the same throne? I used some of those mechanical > > > > In two words "dealer's choice". Bear in mind that not all computers in > >the period used ASCII internally, certainly the Honeywells and ICL in > >the period had private internal 6-bit sets, and IBM has EBCDIC. > [snip] > > Of all the languages I've used, only C and C++ use zero-terminated > character arrays. All the others that have a 'string' type variable > use 'byte' counts. I find these languages much more useful for doing > character manipulation then C/C++ as I often work with string data that > can include an all zero byte. > > ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!woodstock.news.demon.net!demon!news.demon.co.uk!demon!mail2news.demon.co.uk!not-for-mail From: Shez@sv.span.junkblok.com (Shez) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 24 Jun 98 15:14:18 GMT Organization: Theorem 1 Message-ID: <898726458snx@sv.span.junkblok.com> References: <6m90t9$8k9$1@news.kth.se> <6ma1uc$cr4@bgtnsc03.worldnet.att.net> <1FEA5BD38A114289.429667B4F832FDFC.E530282ADDFF7FE3@library-proxy.airnews.net> <6mg1bg$13ui$1@nntp1.u.wa X-Trace: mail2news.demon.co.uk 898712762 mail2news:25360 mail2news mail2news.demon.co.uk X-Complaints-To: abuse@demon.net X-Mail2News-Path: news.demon.net!post-20.mail.demon.net!post.mail.demon.net![158.152.9.124] Copyright: NOTICE $Revision: 1.43 $ X-Poster: RAID@span.com, Sound & Vision Internet BBS [+44] (0)181-288-8444 Lines: 39 jcmorris@mwunix.mitre.org (Joe Morris) writes: | Robert Billing writes: | | > For example 20mm:1km is a valid way of expressing the map scale | >1:50000. The usage 1inch=1mile is simply wrong, it doesn't equal at all. | | Um...you're correct, but only if you require that the glyph "=" be defined | as "equality" and nothing else. By that standard the FORTRAN statement | | X = X + 1.0 | | cannot be valid either. I think the argument is that programming differs from maths in that there's a temporal dimension: the LHS and RHS of the equation are effectively in different time zones, so we get X[now] = X[then]+1 which is semantially valid but outside the scope of the static world view of traditional mathematical formulae. Personally I prefer making the temporal dimension explicit, as in X := X+1 which I was taught to read as "X becomes X+1". (Incidentally, I was told that := was devised as a kludge for <= which couldn't be typed, but I find that odd: did early keyboards really lack a "<" character?) Returning to the subject of slash/backslash, I notice that the backslash seems to have become sufficiently ubiquitous that when reading out web addresses, BBC presenters are now committing the monstrosity of pronouncing "/" as "forward slash". -Shez. ____________________________________________________ If replying by email delete .junkblok from address ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer.sprintlink.net!news-backup-east.sprintlink.net!news.sprintlink.net!207.241.0.194!news.wwa.com!not-for-mail From: jeverett@wwa.DEFEAT.UCE.BOTS.com (John Everett) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 24 Jun 1998 17:26:57 GMT Organization: Everett Associates Lines: 25 Message-ID: <6mrct1$q4$5@hirame.wwa.com> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <35895db1$1$wg$mr2ice@news.epix.net> NNTP-Posting-Host: poolf4-053.wwa.com Mime-Version: 1.0 Content-Type: Text/Plain; charset=US-ASCII X-Newsreader: WinVN 0.99.8 (x86 32bit) In <6ma12l$cr4@bgtnsc03.worldnet.att.net>, on 06/18/98 > at 03:20 AM, "Harold Rabbie" >said: > >The [dir,dir] syntax originated as [gid,uid] on some long-dead DEC O/S, >where users (who were handily known by their octal group and user IDs) >were expected to own exactly one directory. Good old [377,377] - he was >one of the best! Actually, the long dead OS was/is called TOPS-10, but long before the name TOPS-10 it was the PDP-6 monitor. The ID was NOT [gid,uid], but PPN (Project, Programmer Number). On the development PDP-6 at DEC I was [16,23], but when PDP-10 monitor development started we got new PPNs. I was then (and until I left DEC) [10,77]. John Everett - Former member, TOPS-10 Development Group -- jeverett@wwa.DEFEAT.UCE.BOTS.com http://www.wwa.com/~jeverett ^^^^^^^^^^^^^^^ Things have gotten so bad I feel the need to disguise my email address. And I don't like this explanation because I just hate long signatures. ###### Newsgroups: alt.folklore.computers Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!fci-se!fci!newsfeed1.swip.net!swipnet!howland.erols.net!vixen.cso.uiuc.edu!uchinews!not-for-mail From: eric@fudge.uchicago.edu (Eric Fischer) Subject: Re: slash / backslash X-Nntp-Posting-Host: fudge.uchicago.edu Message-ID: Sender: news@midway.uchicago.edu (News Administrator) X-Newsposter: Pnews 4.0-test51 (15 Jan 97) Organization: The University of Chicago References: <6m90t9$8k9$1@news.kth.se> <6mg1bg$13ui$1@nntp1.u.wa <898726458snx@sv.span.junkblok.com> Date: Wed, 24 Jun 1998 21:19:52 GMT Lines: 19 Shez wrote: > (Incidentally, I was told that := was devised as a kludge for <= > which couldn't be typed, but I find that odd: did early keyboards > really lack a "<" character?) One of the Tiny BASICs printed in an early issue of Dr. Dobb's Journal was written by someone who didn't have the use of <, >, or apparently even + or =, and so used (, ), &, and :, respectively, instead. So you would get programs (this is a made up example) that looked like this: 10 A : A & 1 20 PRINT A 30 IF A ( 20 THEN 10 It would drive me crazy pretty quickly, but I guess when hardware is scarce, you use what you can get... eric ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.nyu.edu!rockyd.rockefeller.edu!not-for-mail From: alex*@*rockvax.rockefeller.edu (Alexandre Pechtchanski) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Organization: Rockefeller University Hospital (GCRC), New York Message-ID: <359270d6.30077892@Rockyd> References: <6m90t9$8k9$1@news.kth.se> <6ma1uc$cr4@bgtnsc03.worldnet.att.net> <1FEA5BD38A114289.429667B4F832FDFC.E530282ADDFF7FE3@library-proxy.airnews.net> <898726458snx@sv.span.junkblok.com> X-Newsreader: Forte Agent 1.5/32.451 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 15 Date: Wed, 24 Jun 1998 21:33:38 GMT NNTP-Posting-Host: 129.85.24.56 NNTP-Posting-Date: Wed, 24 Jun 1998 17:33:38 EDT On Wed, 24 Jun 98 15:14:18 GMT, Shez@sv.span.junkblok.com (Shez) wrote: [ Courtesy cc'ed through e-mail to the quoted author ] [ big snip ] >(Incidentally, I was told >that := was devised as a kludge for <= which couldn't be typed, but I >find that odd: did early keyboards really lack a "<" character?) That was _one character_ (or, more precisely, _one glyph_) "<-" used to denote assignment in Algol. [ another snip ] [ When replying, remove *'s from address ] Alexandre Pechtchanski, Systems Manager, RUH, NY ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!cpk-news-hub1.bbnplanet.com!news.bbnplanet.com!nntp.abs.net!news.cetlink.net!serv.hinet.net!ctu-peer!news.nctu.edu.tw!spring.edu.tw!feeder.seed.net.tw!news.seed.net.tw!!dski From: Dan Strychalski Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 25 Jun 1998 00:30:39 GMT Organization: Cameo Communications, Inc. Lines: 11 Message-ID: <6ms5nf$t6p$1@news.seed.net.tw> NNTP-Posting-Host: 192.72.104.4 Originator: dski@ Shez (Shez@sv.span.junkblok.com) wrote -- > Returning to the subject of slash/backslash, I notice that the backslash > seems to have become sufficiently ubiquitous that when reading out web > addresses, BBC presenters are now committing the monstrosity of > pronouncing "/" as "forward slash". It pains me to say that some of my colleagues in the technical writing field refer to a slash as a "foreslash." Dan Strychalski dski at cameonet, cameo, com, tw (no _x_) ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!ais.net!NewsNG.Chicago.Qual.Net!jamie!Qual.Net!news.bright.net!not-for-mail From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 00:45:09 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 57 Message-ID: <35916a10.26607112@news.bright.net> References: <6m90t9$8k9$1@news.kth.se> <6ma1uc$cr4@bgtnsc03.worldnet.att.net> <1FEA5BD38A114289.429667B4F832FDFC.E530282ADDFF7FE3@library-proxy.airnews.net> <6mg1bg$13ui$1@nntp1.u.wa <898726458snx@sv.span.junkblok.com> NNTP-Posting-Host: paul-cas2-cs-6.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 On Wed, 24 Jun 98 15:14:18 GMT, Shez@sv.span.junkblok.com (Shez) wrote: >which I was taught to read as "X becomes X+1". (Incidentally, I was told >that := was devised as a kludge for <= which couldn't be typed, but I >find that odd: did early keyboards really lack a "<" character?) The reason why Pascal uses := as an assignment operator instead of <= is that people moving between languages are likely to think that <= means "less than or equal to" rather than assignment. Whether a character is on the keyboards or not is immaterial. There were no left and right parentheses on the keyboards, but that didn't stop FORTRAN from using them - there was a multi-punch key on the keyboard that kept the card from advancing while you held it down, so you could punch 4096 different combinations. (To punch a left parens, you would hold down the multipunch key and type +, 5, and 8 - to punch a right parens, you hold down the multipunch key and type -, 5, and 8. The minus key was labeled "skip"). There was never any confusion between "equals" and "comparison" in FORTRAN because FORTRAN had no use for comparison. There was no equality test. The comparison operation was IF (whatever) ##1, ##2, ##3 If whatever was less than zero, you went to line number ##1, equal to zero, you went to ##2, and if it was greater than zero, you went to line number ##3. This was true at least through FORTRAN IV. Later on, they added inequalities to Waterloo Fortran, but *real* programmers didn't find any need for them - the existing IF statement was easier to punch than the Waterloo nonsense, and far more powerful. ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d2 From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 98 10:37:15 GMT Organization: UltraNet Communications, Inc. Lines: 30 Message-ID: <6mtch9$diu$1@strato.ultra.net> References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> <3590ff8c.0@news.wizvax.net> NNTP-Posting-Host: d2.dial-22.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 25 Jun 1998 11:32:57 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 In article <3590ff8c.0@news.wizvax.net>, multics@wizvax.wizvax.net (Richard Shetron) wrote: >In article <358ED3B8.414B9C90@tnglwood.demon.co.uk>, >Robert Billing wrote: >>Luc Van der Veken wrote: >> >>> Were strings usually stored as zero-terminated in the days of >>> teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king >>> and emperor on the same throne? I used some of those mechanical >> >> In two words "dealer's choice". Bear in mind that not all computers in >>the period used ASCII internally, certainly the Honeywells and ICL in >>the period had private internal 6-bit sets, and IBM has EBCDIC. >[snip] > >Of all the languages I've used, only C and C++ use zero-terminated >character arrays. All the others that have a 'string' type variable >use 'byte' counts. I find these languages much more useful for doing >character manipulation then C/C++ as I often work with string data that >can include an all zero byte. > Strings that terminated in a null were called ASCIZ (I don't remember how to spell this one--ASCIIZ?) and were different than an ASCII string. I hadn't realized that this had all changed. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!ais.net!NewsNG.Chicago.Qual.Net!jamie!Qual.Net!news.bright.net!not-for-mail From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 11:54:28 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 39 Message-ID: <35923a16.79869061@news.bright.net> References: <6ms5nf$t6p$1@news.seed.net.tw> NNTP-Posting-Host: paul-cas2-cs-39.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 On 25 Jun 1998 00:30:39 GMT, Dan Strychalski wrote: >Shez (Shez@sv.span.junkblok.com) wrote -- >> Returning to the subject of slash/backslash, I notice that the backslash >> seems to have become sufficiently ubiquitous that when reading out web >> addresses, BBC presenters are now committing the monstrosity of >> pronouncing "/" as "forward slash". >It pains me to say that some of my colleagues in the technical >writing field refer to a slash as a "foreslash." Explain to them that a foreslash is the technique used by a surgeon in performing a circumcision, and that they should be using the word "virgule". ------------------------------------------------- A size-friendly community for romance Join our discussion mailing list at http://generous.net/list/list.shtml ------------------------------------------------- Or chat with us on IRC - DALnet channel #GenerousSingles ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 17:16:37 +0100 Organization: Tanglewood Message-ID: <359277E5.741029CF@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> <3590ff8c.0@news.wizvax.net> <6mtch9$diu$1@strato.ultra.net> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 898801299 nnrp-10:14536 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 19 jmfbahciv@aol.com wrote: > Strings that terminated in a null were called ASCIZ (I don't remember > how to spell this one--ASCIIZ?) and were different than an ASCII string. > I hadn't realized that this had all changed. The PDP-11 assembler directive is .ASCIZ, so that it will fit into 6 chars and encode into a 32-bit double RAD50. All the directives had potentially the same syntax as labels and variables, and were drawn from the character set "A-Z 0-9 $ . ". This was in the days when getting the symbol table smaller was seriously important. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### Newsgroups: alt.folklore.computers Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!sunqbc.risq.qc.ca!torn!news.trentu.ca!csess From: csess@blaze.trentu.ca (Eric S. Smith: Left-Field Marshal) Subject: Re: slash / backslash Sender: news@news.trentu.ca (News) Message-ID: Date: Thu, 25 Jun 1998 17:55:59 GMT X-Nntp-Posting-Host: blaze.trentu.ca References: <6m90t9$8k9$1@news.kth.se> <6mg1bg$13ui$1@nntp1.u.wa <898726458snx@sv.span.junkblok.com> Organization: Trent University, Peterborough Canada Lines: 20 In article <898726458snx@sv.span.junkblok.com>, Shez wrote: >Returning to the subject of slash/backslash, I notice that the backslash >seems to have become sufficiently ubiquitous that when reading out web >addresses, BBC presenters are now committing the monstrosity of >pronouncing "/" as "forward slash". It doesn't help. Most puzzlingly, I've often had to tell people to type a _, and most of them seem to know what I mean by "underscore," even if they can't find it. I've heard an anecdote that has the inimitable (we hope) Rush Limbaugh referring to "reverse backslash." I'm sure it's bloody MS-DOS that makes people think \ is a halfway reasonable thing to type on a less than rare basis. --Eric Smith (It's @public:mail_cleanup that they should be typing, BTW. VMS' sequential mailbox files suck. And don't get me started on paths.) ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!nntp2.dejanews.com!nnrp1.dejanews.com!not-for-mail From: yuska@my-dejanews.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 19:07:56 GMT Organization: Deja News - The Leader in Internet Discussion Lines: 36 Message-ID: <6mu76c$sv4$1@nnrp1.dejanews.com> References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> <3590ff8c.0@news.wizvax.net> NNTP-Posting-Host: 204.165.159.3 X-Article-Creation-Date: Thu Jun 25 19:07:56 1998 GMT X-Http-User-Agent: Mozilla/4.04 [en] (X11; I; SunOS 5.5.1 sun4m) In article <3590ff8c.0@news.wizvax.net>, multics@wizvax.wizvax.net (Richard Shetron) wrote: > > In article <358ED3B8.414B9C90@tnglwood.demon.co.uk>, > Robert Billing wrote: > >Luc Van der Veken wrote: > > > >> Were strings usually stored as zero-terminated in the days of > >> teletype, decwriter (LA34, 36 iirc) etc, or was Hollerith king > >> and emperor on the same throne? I used some of those mechanical > > > > In two words "dealer's choice". Bear in mind that not all computers in > >the period used ASCII internally, certainly the Honeywells and ICL in > >the period had private internal 6-bit sets, and IBM has EBCDIC. > [snip] > > Of all the languages I've used, only C and C++ use zero-terminated > character arrays. All the others that have a 'string' type variable > use 'byte' counts. I find these languages much more useful for doing > character manipulation then C/C++ as I often work with string data that > can include an all zero byte. > > I think it had more to do with operating systems and hardware platforms than languages. CDC 6000 and CYBER systems had their unit-record file types delimited by two (6 -bit) characters of zeroes. As a result, standard in and standard out were zero-terminated files by default for most languages. You could select other file types. Joe "for those who remember unit-record" Yuska -----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/ Now offering spam-free web-based newsreading ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!peer.news-uk.wisper.net!peer.news-uk.wisper.net!news-lond.gip.net!news.gsl.net!gip.net!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 19:36:20 GMT Organization: . Lines: 32 Message-ID: <3595a415.5788676@news.innet.be> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <35895db1$1$wg$mr2ice@news.epix.net> <6mrct1$q4$5@hirame.wwa.com> NNTP-Posting-Host: pool02b-194-7-231-229.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes jeverett@wwa.DEFEAT.UCE.BOTS.com (John Everett) told us > In <6ma12l$cr4@bgtnsc03.worldnet.att.net>, on 06/18/98 > > at 03:20 AM, "Harold Rabbie" > >said: > > > >The [dir,dir] syntax originated as [gid,uid] on some long-dead DEC O/S, > >where users (who were handily known by their octal group and user IDs) > >were expected to own exactly one directory. Good old [377,377] - he was > >one of the best! > > Actually, the long dead OS was/is called TOPS-10, but long before the name > TOPS-10 it was the PDP-6 monitor. The ID was NOT [gid,uid], but PPN (Project, > Programmer Number). Didn't they change it to [gid,uid] later? I seem to remember that was how is was called under RSX-11. Having no privileges, I was [200,200] originally (that's 20 years ago...). I had to share that account with a couple of other people, until I found out someone had "forgotten" to set up security on that system, so I created a new account [200,201] for myself - just a matter of finding my own files back in the mess. They explained that we could log in by entering (I forgot the right syntax) the 200,200 ID, and that we wouldn't need a password then (or an easy one - it's too long ago). They didn't tell us that we could also log in as [1,1] (or whatever the admin account was, but I believe it was [1,1]) without a password too (or with the same one). And didn't CP/M Plus also use something like [nnn,nnn]? ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 20:21:40 +0100 Organization: Tanglewood Message-ID: <3592A344.9BB9CBD@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <35895db1$1$wg$mr2ice@news.epix.net> <6mrct1$q4$5@hirame.wwa.com> <3595a415.5788676@news.innet.be> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 898845680 nnrp-01:11975 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 18 Luc Van der Veken wrote: > Didn't they change it to [gid,uid] later? I seem to remember that > was how is was called under RSX-11. Having no privileges, I was Yes, and it is derivative of PDP-11 DOS. > tell us that we could also log in as [1,1] (or whatever the admin > account was, but I believe it was [1,1]) without a password too [1,1] is logically equivalent to root on un*x, but all accounts up to about 10 have unusual privileges. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!scanner.worldgate.com!rover.ucs.ualberta.ca!crash.videotron.ab.ca!not-for-mail From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 21:08:20 GMT Organization: Videotron Communications Ltd. Lines: 13 Message-ID: <3592bbfa.21397092@news.prosurfr.com> References: <6m90t9$8k9$1@news.kth.se> <6ma1uc$cr4@bgtnsc03.worldnet.att.net> <1FEA5BD38A114289.429667B4F832FDFC.E530282ADDFF7FE3@library-proxy.airnews.net> <6mg1bg$13ui$1@nntp1.u.washington.edu> NNTP-Posting-Host: c9169-004.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 dpeschel@u.washington.edu (D. Peschel) wrote: >(What is the mathematical meaning of the double colon? Does it have another >name?) I can't tell you that, but I can note something on topic for this newsgroup. UNIVAC once made a very fancy terminal which included a whole bunch of mathematical symbols in the code positions now used for lowercase letters. The double colon was one of them. John Savard ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!scanner.worldgate.com!rover.ucs.ualberta.ca!crash.videotron.ab.ca!not-for-mail From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 21:10:59 GMT Organization: Videotron Communications Ltd. Lines: 21 Message-ID: <3592bc85.21536665@news.prosurfr.com> References: <6m90t9$8k9$1@news.kth.se> <6mg1bg$13ui$1@nntp1.u.wa <898726458snx@sv.span.junkblok.com> NNTP-Posting-Host: c9169-004.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 eric@fudge.uchicago.edu (Eric Fischer) wrote: >One of the Tiny BASICs printed in an early issue of Dr. Dobb's Journal >was written by someone who didn't have the use of <, >, or apparently >even + or =, and so used (, ), &, and :, respectively, instead. So you >would get programs (this is a made up example) that looked like this: > 10 A : A & 1 > 20 PRINT A > 30 IF A ( 20 THEN 10 >It would drive me crazy pretty quickly, but I guess when hardware is >scarce, you use what you can get... Probably it was designed to work with a Model 19 Teletype, or other 5-level equipment. (While + and = are part of the international standard figures character set for the 5-level code, U.S. teletypewriters provided additional conventional punctuation marks, like the semicolon and the exclamation mark, instead.) John Savard ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!scanner.worldgate.com!rover.ucs.ualberta.ca!crash.videotron.ab.ca!not-for-mail From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 25 Jun 1998 21:21:40 GMT Organization: Videotron Communications Ltd. Lines: 30 Message-ID: <3592bdd8.21875537@news.prosurfr.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> NNTP-Posting-Host: c9169-004.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 as951@lafn.org (George Arndt) wrote: >It seems pity that these conventions were not used in HLL's. We might >have been spared monstrosities like `||' and `&&'. I can't really agree. /\ for AND creates an ambiguity, since / might be division by itself. However, I do agree that || and && are also unacceptable. I don't even like ** for that reason. I believe that operators should have the prefix property (in respect of their special characters), and decode very simply. Those that can't be represented by a single character should be denoted by symbols including words... + - * /, and then, if you can't use ^ for exponentiation, use .PW. or ?PW? or `PW`. There's no need to have both & and && ... .AND. would operate on all the bits of variables declared INTEGER, but only the last bit of variables declared LOGICAL. And, of course, if A and B are arrays, A * B would multiply corresponding elements like in APL; but if A and B were declared to be of type MATRIX, then A * B would mean matrix multiplication. (There's always the EQUIVALENCE statement if you want to do both.) John Savard ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!howland.erols.net!feed2.news.erols.com!erols!news.ultranet.com!not-for-mail From: "dave porter" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 25 Jun 1998 21:49:20 GMT Organization: none of the above Lines: 80 Message-ID: <01bda083$11a33330$0ba17392@glastonbury> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> NNTP-Posting-Host: 146.115.161.11 X-Complaints-To: abuse@ultra.net X-Ultra-Time: 25 Jun 1998 21:49:20 GMT X-Newsreader: Microsoft Internet News 4.70.1161 You need '&' and '&&' if you're unwilling to specify operand evaluation ordering for operators, which most modern languages seem to be. It's not a question of which bits get and-ed, it's a question of whether (a) you guarantee to evaluate the LHS before the RHS, and (b) you guarantee to not evaluate the RHS after the LHS has yielded false. In C this code is a safe way of accessing a 10-entry array: if (i < 10 && a[i] == b) ... In a language such as Bliss which does not have an equivalent to && you must say if .i < 10 then if .a[i] eq .b then ... and much of that and you'll wish for an '&&'. You could avoid the extra level of indentation by saying if (if .i < 10 then .a[i] eq .b else false) then ... but that hardly makes things clearer. In Algol68, '&&' was variously called 'andf' (and-if) or 'thef' (then-if); I can't remember which form was chosen in the end. if i < 10 thef a[i] = b then ... fi 'thef' is preferable to 'then if' here because it does not need the extra fi, which helps layout. dave -- For email, please remove the 'w' from my address. Sorry. John Savard wrote in article <3592bdd8.21875537@news.prosurfr.com>... > as951@lafn.org (George Arndt) wrote: > > >It seems pity that these conventions were not used in HLL's. We might > >have been spared monstrosities like `||' and `&&'. > > I can't really agree. > > /\ for AND creates an ambiguity, since / might be division by itself. > However, I do agree that || and && are also unacceptable. > > I don't even like ** for that reason. > > I believe that operators should have the prefix property (in respect > of their special characters), and decode very simply. Those that can't > be represented by a single character should be denoted by symbols > including words... > > + - * /, and then, if you can't use ^ for exponentiation, use .PW. or > ?PW? or `PW`. > > There's no need to have both & and && ... .AND. would operate on all > the bits of variables declared INTEGER, but only the last bit of > variables declared LOGICAL. > > And, of course, if A and B are arrays, A * B would multiply > corresponding elements like in APL; but if A and B were declared to be > of type MATRIX, then A * B would mean matrix multiplication. (There's > always the EQUIVALENCE statement if you want to do both.) > > John Savard > ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer.sprintlink.net!news-backup-east.sprintlink.net!news.sprintlink.net!199.232.56.18!news.ultranet.com!d11 From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 26 Jun 98 12:10:45 GMT Organization: UltraNet Communications, Inc. Lines: 32 Message-ID: <6n06cu$cg0$1@ligarius.ultra.net> References: <6m90t9$8k9$1@news.kth.se> <6mllnc$87j@top.mitre.org> <3592cdc2.5647110@news.innet.be> <358ED3B8.414B9C90@tnglwood.demon.co.uk> <3590ff8c.0@news.wizvax.net> <6mtch9$diu$1@strato.ultra.net> <359277E5.741029CF@tnglwood.demon.co.uk> NNTP-Posting-Host: d11.dial-14.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 26 Jun 1998 13:06:38 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 In article <359277E5.741029CF@tnglwood.demon.co.uk>, Robert Billing wrote: >jmfbahciv@aol.com wrote: > >> Strings that terminated in a null were called ASCIZ (I don't remember >> how to spell this one--ASCIIZ?) and were different than an ASCII string. >> I hadn't realized that this had all changed. > > The PDP-11 assembler directive is .ASCIZ, so that it will fit into 6 >chars and encode into a 32-bit double RAD50. All the directives had >potentially the same syntax as labels and variables, and were drawn from >the character set "A-Z 0-9 $ . ". Yup. I think that Macro-10 didn't require the dot. All this talk is making me regret that I threw away my listings. I could go in for a listing reading session :-). At least it would remind me of some stories for folklore. > > This was in the days when getting the symbol table smaller was >seriously important. > Yup. It's too bad that tradition didn't continue. I'd really like to know how fast this system could run if the software had been written the way we used to write it. It might even be usable. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!peer.news-uk.wisper.net!peer.news-uk.wisper.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 26 Jun 1998 22:45:32 GMT Message-ID: <6n18ac$a8b$2@irk.zetnet.co.uk> References: <01bda083$11a33330$0ba17392@glastonbury> NNTP-Posting-Host: man-208.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 898901132 10507 194.247.43.9 (26 Jun 1998 22:45:32 GMT) NNTP-Posting-Date: 26 Jun 1998 22:45:32 GMT X-Everything: Net-Tamer V 1.08X Lines: 16 On 1998-06-25 porter@wultranet.com said: :It's not a question of which bits get and-ed, it's a :question of whether (a) you guarantee to evaluate :the LHS before the RHS, and (b) you guarantee to not :evaluate the RHS after the LHS has yielded false. Agreed. Much as I could rant about Ada (and I did during my degree course), it does have a very clear way of doing this; you either say AND (for both conditions evaluated pseudo-simultaneously) or you can say AND THEN (for C-like short-circuiting). Unfortunately, that's messy to parse, but it's very nice to read. -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her... ###### Path: ccw.ch!usenet From: Neil Franklin Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 29 Jun 1998 23:59:46 +0200 Organization: My own Private Self Lines: 29 Message-ID: References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> X-Newsreader: Gnus v5.3/Emacs 19.34 jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) made this claim: > There's no need to have both & and && ... .AND. would operate on all > the bits of variables declared INTEGER, but only the last bit of > variables declared LOGICAL. Of course any sane language defines false=00000... and true=11111... So & automatically does &&, no need for INTEGER/LOGICAL stuff. Shall we call that signed logicals :-)? And of course a=flag&integer replaces if flag then a=integer else a=0 endif Messy but consise, fast and compact, a.k.a. Forth. I am surprised that lisard missed that one :-). Yep, I am back among the living, a.k.a. on-line. -- private: Neil.Franklin@ccw.ch.remove http://www.ccw.ch/Neil.Franklin/ office: franklin@arch.ethz.ch.remove http://caad.arch.ethz.ch/~franklin/ WinCE car, crashing soon on a road near you ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newspeer.monmouth.com!news.ultranet.com!not-for-mail From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 05:29:59 -0400 Organization: as little as possible! Lines: 23 Message-ID: <3598B017.4C4ABAD5@stoneweb.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> NNTP-Posting-Host: zephyr.ultranet.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@ultra.net X-Ultra-Time: 30 Jun 1998 09:29:33 GMT X-Mailer: Mozilla 2.0 (X11; I; Linux 2.0.29 i586) Robert Billing wrote: > > Neil Franklin wrote: > > > Of course any sane language defines false=00000... and true=11111... > > ...except on a machine (PDP7 ?) which uses all ones as a NAN. Or on a ones' complement machine (e.g. LINC, PDP-9) which uses all ones (111.....) as negative zero. In any event, it's much easier to do a zero/non-zero test than a zero/all-ones test. E.g. MOV# AC1,AC1,SZR (Nova code) skips if the value is zero (SNR skips if it's non-zero) - nice and fast. -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum | ICBM: N42:22 W71:47 | |________________________________________________|_____________________| ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!ais.net!NewsNG.Chicago.Qual.Net!jamie!Qual.Net!news.bright.net!not-for-mail From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 05:52:17 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 26 Message-ID: <359873cb.7566305@news.bright.net> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> NNTP-Posting-Host: paul-cas1-cs-10.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 On 29 Jun 1998 23:59:46 +0200, Neil Franklin wrote: }jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) made this claim: }> There's no need to have both & and && ... .AND. would operate on all }> the bits of variables declared INTEGER, but only the last bit of }> variables declared LOGICAL. }Of course any sane language defines false=00000... and true=11111... }So & automatically does &&, no need for INTEGER/LOGICAL stuff. }Shall we call that signed logicals :-)? And 10101010 would be a half-truth? Hell, any *sane* language would deal only in truth. Who needs lies? Therefore *any* number should evaluate as true. -------------------------------------------------------- Fat calories should be no more than 30% of what you eat. Superpremium ice cream is fatter than that, so be sure to add *lots* of those sugary sprinkles on top! ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!europa.clark.net!198.138.0.5!newshub.northeast.verio.net!news-feed.inet.tele.dk!bofh.vszbr.cz!nntp.news.xara.net!xara.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 08:13:28 +0100 Organization: Tanglewood Message-ID: <35989018.78DC8D74@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899193019 nnrp-03:10054 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 11 Neil Franklin wrote: > Of course any sane language defines false=00000... and true=11111... ...except on a machine (PDP7 ?) which uses all ones as a NAN. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!Supernews60!supernews.com!coop.net!world!blanket.mitre.org!news.mitre.org!mwunix!jcmorris From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 30 Jun 1998 12:28:47 GMT Organization: The MITRE Corporation Lines: 12 Message-ID: <6nallv$7vl@top.mitre.org> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> NNTP-Posting-Host: mwunix.mitre.org "Carl R. Friend" writes: > Or on a ones' complement machine (e.g. LINC, PDP-9) which uses >all ones (111.....) as negative zero. ...such as the PDP-1. One of my memories of the PDP-1 documentation for the PDP-1 installed at MIT was the early (2/15/62) writeup on DDT which in its "Hints and Kinks" section had the note: The PDP addition circuits abhor -0. To insert a -0, type 777777. Joe Morris ###### From: jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 16:50:59 GMT Organization: Videotron Communications Ltd. Lines: 26 Message-ID: <35991659.7570314@news.prosurfr.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <01bda083$11a33330$0ba17392@glastonbury> NNTP-Posting-Host: c9169-004.prosurfr.com X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!peer.news-uk.wisper.net!194.106.32.13.MISMATCH!peer.news-uk.wisper.net!news.freedom2surf.net!diablo.theplanet.net!london-news-feed1.bbnplanet.com!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!newsfeed.xcom.net!feed2.news.erols.com!erols!logbridge.uoregon.edu!scanner.worldgate.com!rover.ucs.ualberta.ca!crash.videotron.ab.ca!not-for-mail "dave porter" wrote, in part: >You need '&' and '&&' if you're unwilling to >specify operand evaluation ordering for operators, >which most modern languages seem to be. >It's not a question of which bits get and-ed, it's a >question of whether (a) you guarantee to evaluate >the LHS before the RHS, and (b) you guarantee to not >evaluate the RHS after the LHS has yielded false. And, like +, is an operator. Which subexpression on which side of it gets evaluated first is dependent on how the compiler chooses to optimize, in normal languages. (Yes, I was imprinted on FORTRAN.) If you have a subexpression that may not or should not be evaluated in some cases, this should be indicated explicitly; either by putting it in a separate statement, or some other explicit construct. While APL can produce some esoteric looking expressions, they aren't dangerously confusing in the way that those in C and Perl are. One writes an expression to calculate its result, not to experience its side effects. John Savard http://www.freenet.edmonton.ab.ca/~jsavard/index.html ###### From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 19:06:39 -0400 Organization: as little as possible! Lines: 31 Message-ID: <35996F7F.7A750B71@stoneweb.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> <6nallv$7vl@top.mitre.org> NNTP-Posting-Host: zephyr.ultranet.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@ultra.net X-Ultra-Time: 30 Jun 1998 23:06:14 GMT X-Mailer: Mozilla 2.0 (X11; I; Linux 2.0.29 i586) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!fu-berlin.de!howland.erols.net!feed2.news.erols.com!erols!news.ultranet.com!not-for-mail Joe Morris wrote: > > "Carl R. Friend" writes: > > > Or on a ones' complement machine (e.g. LINC, PDP-9) which uses > >all ones (111.....) as negative zero. > > ...such as the PDP-1. One of my memories of the PDP-1 documentation > for the PDP-1 installed at MIT was the early (2/15/62) writeup on > DDT which in its "Hints and Kinks" section had the note: > > The PDP addition circuits abhor -0. To insert a -0, type 777777. I believe that all the DEC 18-bitters were 1's complement boxes, and before someone takes me to task, I'll toss in that the PDP-15 understood both: "ADD" did 1's complement and "TAD" did two's complement. If, as Mr. Morris states, "The PDP addition circuits abhor -0", why did DEC use 1's complement? That's only a half-sarcastic question; I really wonder sometimes. Is there an engineering "plus" to it? -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum | ICBM: N42:22 W71:47 | |________________________________________________|_____________________| ###### Path: ccw.ch!elna.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!fu-berlin.de!newspeer.monmouth.com!news.ultranet.com!not-for-mail From: "dave porter" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 30 Jun 1998 19:08:13 GMT Organization: none of the above Lines: 69 Message-ID: <01bda45a$64a37dd0$0ba17392@glastonbury> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <01bda083$11a33330$0ba17392@glastonbury> <35991659.7570314@news.prosurfr.com> NNTP-Posting-Host: 146.115.161.11 X-Complaints-To: abuse@ultra.net X-Ultra-Time: 30 Jun 1998 19:08:13 GMT X-Newsreader: Microsoft Internet News 4.70.1161 -- For email, please remove the 'w' from my address. Sorry. John Savard wrote in article <35991659.7570314@news.prosurfr.com>... > "dave porter" wrote, in part: > > >You need '&' and '&&' if you're unwilling to > >specify operand evaluation ordering for operators, > >which most modern languages seem to be. > > >It's not a question of which bits get and-ed, it's a > >question of whether (a) you guarantee to evaluate > >the LHS before the RHS, and (b) you guarantee to not > >evaluate the RHS after the LHS has yielded false. > > And, like +, is an operator. Which subexpression on which side of it > gets evaluated first is dependent on how the compiler chooses to > optimize, in normal languages. (Yes, I was imprinted on FORTRAN.) > Sure - that's why I said the 'most modern languages' bit. I might be faulted for generalizing without supporting evidence, but I obviously dealt with the language-dependent aspects. Btw, I'd say "how the language is defined" and not "how the compiler chooses". A particular implementation might always to left->right evaluation but you can't rely on it in portable code. Oh: you were imprinted on FORTRAN, where the official definition of the language was "what the first compiler did" :-) > If you have a subexpression that may not or should not be evaluated in > some cases, this should be indicated explicitly; either by putting it > in a separate statement, or some other explicit construct. Well, I am arguing for the existence of '&&' (or 'andf', or 'thef', or however you want to spell it) as being precisely what I want in the language to fulfil the need you point out for 'some other explicit construct'. Aren't we agreeing here? Don't expect plain '&' to fulfil your needs for non-evaluation, you must use something else. > While APL can produce some esoteric looking expressions, they aren't > dangerously confusing in the way that those in C and Perl are. One > writes an expression to calculate its result, not to experience its > side effects. Confusion is in the eye of the beholder: it is caused by a conflict between expectations and actuality. Normal algebraic notation assigns priorities for five (?) dyadic operations: addition, subtraction, multiplication, and raising to the power. Programming languages need more operators that than. You end up with the choice of whether to generalise by (a) assigning priorities to all ops - like C, or (b) assigning priorities to no ops - like APL. (I am using 'operator' in its sloppy C sense rather than its specialized APL sense here). Neither choice is without problems. I would certainly find a <- b x c + d very confusing when it gets evaluated as b x (c + d), but that's because I don't program in APL every day. Actually, extrapolating from the current rate, I progam in APL about once a lifetime. ###### From: "S. T." Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 30 Jun 98 21:17:20 +0300 Organization: Freenet Finland Lines: 13 Message-ID: <359955E0.MD-0.198.definitely@nospam.fi> References: NNTP-Posting-Host: dialin-0-17.evitech.fi Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: MicroDot-II/AmigaOS 0.198 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!news-lond.gip.net!news-stkh.gip.net!news.gsl.net!gip.net!newsfeed1.funet.fi!news.cs.hut.fi!learnet.freenet.hut.fi!not-for-mail Peter Ludemann (ludemann@inxight.com) wrote on 18 Jun 1998 15:33:18 -0700: > "S. T." writes: > > > Ever seen any C? Or used a Unix system (or an Amiga, for that matter)? > > \n and \r are common, but \n sometimes means only line feed, sometimes > > line feed + carriage return. > > Wrong. It always means "new line". However ... I was referring here to something application specific. \n *should* of course mean "newline", but it doesn't in all programs. Don't ask me why. Or maybe I remember incorrectly. ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Tue, 30 Jun 1998 22:28:24 GMT Organization: . Lines: 151 Message-ID: <359b557a.4363122@news.innet.be> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <359873cb.7566305@news.bright.net> NNTP-Posting-Host: pool02b-194-7-231-60.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!peer.news-uk.wisper.net!peer.news-uk.wisper.net!nntp.news.xara.net!xara.net!rill.news.pipex.net!pipex!warm.news.pipex.net!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail deke.spamblock@generous.net told us > On 29 Jun 1998 23:59:46 +0200, Neil Franklin > wrote: > > }jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) made this claim: > }> There's no need to have both & and && ... .AND. would operate on all > }> the bits of variables declared INTEGER, but only the last bit of > }> variables declared LOGICAL. > > }Of course any sane language defines false=00000... and true=11111... > }So & automatically does &&, no need for INTEGER/LOGICAL stuff. > }Shall we call that signed logicals :-)? > > And 10101010 would be a half-truth? > Hell, any *sane* language would deal only in truth. > Who needs lies? > Therefore *any* number should evaluate as true. Not: the number 0 should definitely be interpreted as false ;) Or not? We could propose a new standard where -1 = false ('cause of the negative feeling about it), and 0 is true. That would work perfectly, as long as compiler makers remember that a logical AND has to be done through an assembler OR instruction and vice versa. "Half-truth": I'm not gonna go into the matter of trinary logic (you remember, where in analogy to the Binary ITems called BITs, they work with Trinary ITems called TITs) I think John and Neil meant that any sane language would _check_ for a Z/NZ status when it only needs a logical result (for speed, not because someone might answer "maybe"), and _store_ the value "true" as 1111.... so it can be used by bitwise operators with a correct result. As for MS, Visual Basic does it this way (true == -1, and it only hase one AND and one OR btw). C++5 knows two different boolean types (pure "bool" and the older macro-defined "BOOL"): both use +1 (== ...001) for true/TRUE resp. The result is (as I found out a couple of months ago) that a VC activex control that returns BOOL values to VB, can result in situations where .... If Not func(make_it_return_true) Then ... and If func(make_it_return_true) Then ... both evaluate to True. If you store the function result in a variable defined as "Boolean" first, it's interpreted correctly. In Linux, the same thing in gcc: bool true is +1. I suppose the C++ standard dictates it this way - not the only situation where it's working against all logic (1). For use in "plain" C gcc doesn't know an uppercase BOOL, but "grep typedef.*bool /usr/include/*" dug up the following lines (I omit the filenames so they don't wrap in your newsreader): /* Yes, SYSVR4 has a "typedef enum boolean" in sys/types.h typedef enum boolean {false, true} boolean; IIRC enums start counting from 0 upward, so the result is obvious. (1) As a side note - twice as long as the rest of the post, sorry for the word "note" :) - I just said something about C++ and logic. In C it's OK (and maybe even best) to look at things that happen inside your program from the processor's point of view. In C++ it's the other way around: look at everything from the application, and preferably arithmetic / algebraic, side - and forget ALL about that processor that's inside your machine. Example: who writes char buf[3]; char c = '\xc0'; // char == 1 byte unsigned short uc = c; // short == 2 bytes sprintf(buf,"%02hX",uc);// 'cause there's no %X for chars and expects to find 0x00c0 in uc, is f*cked: he will find 0xffc0 there, and a string "FFC0" overflowing his buffer. I immediately knew what was going on, but someone had to explain it before I understood why. Looking from an arithmetic point of view it is said to be logical: The C++ standard defines that the conversion should go like this: - char is smaller than short, so we extend it into something the size of a short first: that's a signed short, _with_ sign extension. - now we take that signed short, and convert it to an unsigned. - because the value we now have (-64) is outside the legal range for an unsigned short (0 to 65535), we start applying complicated mathematical rules involving modulo etc. that maybe even would trick a dumb compiler into making a detour over a 4 byte long, ultimately resulting in the signed value's binary image being dumped into the unsigned variable unchanged. The result is that in the above example, int y = uc - c; results in zero, like it should. Translated to decimal numbers: storing -64 in an unsigned as +192 would definitely be an error, so they rather store it as +65472, where (+65472) - (-64), keeping account with the limits of the data type and applying the necessary modulo arithmetic, results in zero. *MY* point of view is that the logical way is: Take the first variable, and put it into the second one. Oops - it's not filling it up completely. Let's put zeroes in the unused part, to clear out the rubbish that may be there. This way, int y = uc - c; results in zero, with 7/8 less work, and it _won't_ make sprintf overflow the output buffer by prepending F's to an "unsigned int" that should never be > 0xFF, when formatted with "%02X". Also, the C++ way (remember the mod's) results in short z = c; z = z + uc; being 0 *too*. Now we have the following set of equations: uc - c = 0 (= y) uc + c = 0 (= z) Some elementary mathematics proves that c and uc must both be 0 for this to be possible. Done my way, z would be 384, and solving the same simple set of equations would teach us that uc and c both are 192. AFAIR, C0 hex has always been 192. C++ and logic. Logic? ... (looking around) ... where? ###### From: yuska@my-dejanews.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 01 Jul 1998 03:16:20 GMT Organization: Deja News - The Leader in Internet Discussion Lines: 29 Message-ID: <6nc9m4$4bo$1@nnrp1.dejanews.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> <6nallv$7vl@top.mitre.org> <35996F7F.7A750B71@stoneweb.com> NNTP-Posting-Host: 209.61.79.92 X-Article-Creation-Date: Wed Jul 01 03:16:20 1998 GMT X-Http-User-Agent: Mozilla/4.05 [en] (WinNT; I) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!nntp2.dejanews.com!nnrp1.dejanews.com!not-for-mail In article <35996F7F.7A750B71@stoneweb.com>, "Carl R. Friend" wrote: > > Joe Morris wrote: > > > > "Carl R. Friend" writes: > > > > > Or on a ones' complement machine (e.g. LINC, PDP-9) which uses > > >all ones (111.....) as negative zero. > > > > ...such as the PDP-1. One of my memories of the PDP-1 documentation > > for the PDP-1 installed at MIT was the early (2/15/62) writeup on > > DDT which in its "Hints and Kinks" section had the note: > > > > The PDP addition circuits abhor -0. To insert a -0, type 777777. Just out of curiosity, was this the PDP-1, or one of the original TX-0 machines. One existed at MIT in Cambridge (I once got to play spacewar on it in 1967), and one at Lincoln Labs. Both were breadboard, open rack systems. Joe " no, it wasn't a card input spacewar game" Yuska -----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 01 Jul 1998 07:47:35 +0100 Organization: Tanglewood Message-ID: <3599DB87.1020A1A8@tnglwood.demon.co.uk> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> <6nallv$7vl@top.mitre.org> <35996F7F.7A750B71@stoneweb.com> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899279009 nnrp-04:24521 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 16 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer.gip.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail Carl R. Friend wrote: > If, as Mr. Morris states, "The PDP addition circuits abhor -0", > why did DEC use 1's complement? That's only a half-sarcastic > question; I really wonder sometimes. Is there an engineering "plus" > to it? Well, it means that any number can be negated (you don't suffer the -32768 problem), and you have a spare bit pattern (-0) which IIRC could be used as a NAN to indicate error or uninitialised memory. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 1 Jul 1998 13:43:19 GMT Organization: The MITRE Corporation Lines: 19 Message-ID: <6ndedn$6mk@top.mitre.org> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> <6nallv$7vl@top.mitre.org> <35996F7F.7A750B71@stoneweb.com> <6nc9m4$4bo$1@nnrp1.dejanews.com> NNTP-Posting-Host: mwunix.mitre.org Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.internetmci.com!204.97.128.3!usenet.logical.net!news.tufts.edu!blanket.mitre.org!news.mitre.org!mwunix!jcmorris yuska@my-dejanews.com writes: >> Joe Morris wrote: >> > The PDP addition circuits abhor -0. To insert a -0, type 777777. >Just out of curiosity, was this the PDP-1, or one of the original TX-0 >machines. The quote was from the PDP-1 DDT handout. If I ever had a DDT spec for the TX-0 it's long gone. >One existed at MIT in Cambridge (I once got to play spacewar on it in 1967), >and one at Lincoln Labs. Both were breadboard, open rack systems. Um...the TX-0 was originally at Lincoln, and moved to Building 26 on the MIT campus in 1961 (?) when the TX-1 went into the Labs. (Or that's the way I recall having it explained to me 36 years ago.) Joe Morris ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 1 Jul 1998 20:25:25 GMT Message-ID: <6ne5vl$tmn$1@irk.zetnet.co.uk> References: NNTP-Posting-Host: man-163.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 899324725 30423 194.247.40.207 (1 Jul 1998 20:25:25 GMT) NNTP-Posting-Date: 1 Jul 1998 20:25:25 GMT X-Everything: Net-Tamer V 1.08X Lines: 55 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.icl.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail On 1998-06-29 Neil.Franklin@ccw.ch.remove said: :jsavard@tenMAPSONeerf.edmonton.ab.ca (John Savard) made this claim: :> There's no need to have both & and && ... .AND. would operate on :>all the bits of variables declared INTEGER, but only the last bit :>of variables declared LOGICAL. :Of course any sane language defines false=00000... and true=11111... :So & automatically does &&, no need for INTEGER/LOGICAL stuff. :Shall we call that signed logicals :-)? Yes, but & doesn't short circuit, which was the point under discussion... once... somewhere... *looks around frantically* :And of course :a=flag&integer :replaces :if flag then a=integer else a=0 endif :Messy but consise, fast and compact, a.k.a. Forth. Forth-79 defined the value returned by 0< as 0 or 1. All the subsequent Forths had it as -1, but there's always a catch. :> Of course if it matters you can define : 0= 0= ABS NEGATE ; : 0< 0< ABS NEGATE ; which will work on all systems, Forth-79 or otherwise. And you can also have f ? 20 : 30 as 10 AND 20 + but what is even more fun is to use that approach in defining low-level Forth words like 0<, MAX or 0BRANCH... ;> I believe that it's possible to write an entire Forth kernel without using a single conditional branch, which should theoretically have some advantages on a heavily pipelined system. Anyway, I'll shut up now. :I am surprised that lisard missed that one :-). Well, since I've only just discovered this sequence of posts - I only get to read after 7.30pm, you know! - it would have been hard for me to get in before you... :Yep, I am back among the living, a.k.a. on-line. Glad to hear it. -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her... ###### From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 01 Jul 1998 21:16:08 -0400 Organization: as little as possible! Lines: 27 Message-ID: <359ADF58.3DC857FC@stoneweb.com> References: <6m90t9$8k9$1@news.kth.se> <6mbhum$1t1$1@cronkite.cc.uga.edu> <1998Jun19.153917.15816@lafn.org> <3592bdd8.21875537@news.prosurfr.com> <35989018.78DC8D74@tnglwood.demon.co.uk> <3598B017.4C4ABAD5@stoneweb.com> <6nallv$7vl@top.mitre.org> <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> NNTP-Posting-Host: zephyr.ultranet.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@ultra.net X-Ultra-Time: 2 Jul 1998 01:15:47 GMT X-Mailer: Mozilla 2.0 (X11; I; Linux 2.0.29 i586) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!naxos!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!news.ultranet.com!not-for-mail Robert Billing wrote: > > Well, [1's complement logic] means that any number can be negated > (you don't suffer the -32768 problem), and you have a spare bit > pattern (-0) which IIRC could be used as a NAN to indicate error or > uninitialised memory. All well and good, but 1's complement logic tends to misbehave (logically) when one increments from -1 to 0 unless the machine takes that into account (possibly taking a cycle or so?). NANs (e.g. division by zero) can be taken care of by a trap or an interrupt. Uninitialised memory is the programmer's problem. If he doesn't fill or initialise his memory locations (old usage: registers) first, the weirdness he gets is his own %@$* fault. Why, then, one's complement? Or am I not an old enough fart to grasp this? -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum | ICBM: N42:22 W71:47 | |________________________________________________|_____________________| ###### Path: ccw.ch!usenet From: Neil Franklin Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 02 Jul 1998 00:14:48 +0200 Organization: My own Private Self Lines: 72 Message-ID: References: <6ne5vl$tmn$1@irk.zetnet.co.uk> X-Newsreader: Gnus v5.3/Emacs 19.34 lisard@zetnet.co.uk writes: > On 1998-06-29 Neil.Franklin@ccw.ch.remove said: > :Of course any sane language defines false=00000... and true=11111... > :So & automatically does &&, no need for INTEGER/LOGICAL stuff. > :Shall we call that signed logicals :-)? > > Yes, but & doesn't short circuit, which was the point under > discussion... once... somewhere... *looks around frantically* That comes from joining an thread after its beginning has expired from my news feed :-). > :And of course > :a=flag&integer > :replaces > :if flag then a=integer else a=0 endif > :Messy but consise, fast and compact, a.k.a. Forth. > > Forth-79 defined the value returned by 0< as 0 or 1. All the subsequent > Forths had it as -1, but there's always a catch. :> Of course if it > matters you can define I was thinking of cmFORTH (the one Moore wrote for the NC4000 chip). That would be based on Forth-83. But I think the Forth-79 based stuff on the 6502 (C64) also used all-1s, but memory is fading on this one. > but what is even more fun is to use that approach in defining low-level > Forth words like 0<, MAX or 0BRANCH... ;> I believe that it's possible > to write an entire Forth kernel without using a single conditional > branch, which should theoretically have some advantages on a heavily > pipelined system. Should be possible. Replacing conditional jumps with a few masking instructions is possible. Actuall the ARM simply allows any instruction to be conditional so you simply arange for the trua and false cases to appear inline with the appropriate conditionals. But on the NC4000 (not pipelined at all, not even memory access interleaved with instruction decode) 0< and 0BRANCH (simply called IF) are single word opcodes (no implementing there) and MIN/MAX simply uses: : MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; My attempt at non-conditional would be: : MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; But I think that would require quite an large penalty on conditionals for this version to be faster. OK, enough of scaring people :-). > :I am surprised that lisard missed that one :-). > > Well, since I've only just discovered this sequence of posts - I only > get to read after 7.30pm, you know! - it would have been hard for me to > get in before you... I was surprised, because it was in the massive back-from-holiday download and I assumed it to be a few days old. -- private: Neil.Franklin@ccw.ch.remove http://www.ccw.ch/Neil.Franklin/ office: franklin@arch.ethz.ch.remove http://caad.arch.ethz.ch/~franklin/ WinCE car, crashing soon on a road near you ###### From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 02 Jul 1998 04:10:19 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 39 Message-ID: <359b0667.176195828@news.bright.net> References: <359955E0.MD-0.198.definitely@nospam.fi> NNTP-Posting-Host: paul-cas2-cs-48.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!naxos!news.belnet.be!newsfeed.skynet.be!newscore.univie.ac.at!europa.clark.net!199.0.154.56!ais.net!NewsNG.Chicago.Qual.Net!jamie!Qual.Net!news.bright.net!not-for-mail On 30 Jun 98 21:17:20 +0300, "S. T." wrote: }Peter Ludemann (ludemann@inxight.com) wrote on 18 Jun 1998 15:33:18 -0700: } }> "S. T." writes: }> }> > Ever seen any C? Or used a Unix system (or an Amiga, for that matter)? }> > \n and \r are common, but \n sometimes means only line feed, sometimes }> > line feed + carriage return. }> }> Wrong. It always means "new line". However ... } }I was referring here to something application specific. \n *should* of }course mean "newline", but it doesn't in all programs. Don't ask me }why. Or maybe I remember incorrectly. \n *does* always means newline. On MS-DOS systems, a newline consists of CRLF, while on UNIX systems, all you need is line feed. The difference is that MS-DOS was designed with a CRT in mind, while UNIX was designed with TTY in mind. If you do a line feed on a TTY, the hardware automatically moves to the left. That's obvious. Why would anyone waste paper? On a screen, though, you're wasting nothing. You can always move up and down and left and right, so a line feed *means* a line feed. So \n means newline, and it always does the right thing. It's linefeed which is not always predictable. ###### Newsgroups: alt.folklore.computers From: alderson@netcom5.netcom.com (Richard M. Alderson III) Subject: Re: slash / backslash In-Reply-To: deke.spamblock@generous.net's message of Thu, 02 Jul 1998 04:10:19 GMT Message-ID: Sender: alderson@netcom5.netcom.com Reply-To: alderson@netcom.com Organization: NETCOM On-line services References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Date: Thu, 2 Jul 1998 06:29:17 GMT Lines: 25 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!netnews.com!ix.netcom.com!netcom5!alderson In article <359b0667.176195828@news.bright.net> deke.spamblock@generous.net writes: >On 30 Jun 98 21:17:20 +0300, "S. T." wrote: >\n *does* always means newline. >On MS-DOS systems, a newline consists of CRLF, while on UNIX systems, all you >need is line feed. The difference is that MS-DOS was designed with a CRT in >mind, while UNIX was designed with TTY in mind. >If you do a line feed on a TTY, the hardware automatically moves to the left. >That's obvious. Why would anyone waste paper? Umm, I don't know about any particular TTY, but the linefeed and vertical tab characters in ASCII were defined to move *only* vertically: The carriage return code is what moved the print head back to the far left. Similar keys were defined in EBCDIC ("line feed" was labeled "index" on some 2740/2741 terminals, a real Selectric holdover). The Unix use of linefeed for newline is, technically speaking, an abomination, but one it's too late to correct *now*... -- Rich Alderson Last LOTS Tops-20 Systems Programmer, 1984-1991 last name @ XKL dot COM Current maintainer, MIT TECO EMACS (v. 170) ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 02 Jul 98 10:51:55 GMT Organization: UltraNet Communications, Inc. Lines: 45 Message-ID: <6nfs2u$n7u$2@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> NNTP-Posting-Host: d11.dial-11.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 2 Jul 1998 11:48:46 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!news-peer.gip.net!news.gsl.net!gip.net!howland.erols.net!feed2.news.erols.com!erols!news.ultranet.com!d11 In article , alderson@netcom5.netcom.com (Richard M. Alderson III) wrote: >In article <359b0667.176195828@news.bright.net> deke.spamblock@generous.net >writes: > >>On 30 Jun 98 21:17:20 +0300, "S. T." wrote: > >>\n *does* always means newline. > >>On MS-DOS systems, a newline consists of CRLF, while on UNIX >>systems, all you need is line feed. The difference is that >>MS-DOS was designed with a CRT in >>mind, while UNIX was designed with TTY in mind. > >>If you do a line feed on a TTY, the hardware automatically moves >>to the left. >>That's obvious. Why would anyone waste paper? > >Umm, I don't know about any particular TTY, but the linefeed and >vertical tab characters in ASCII were defined to move *only* vertically: I do and that guy's all wet. I never encountered a TTY that didn't need that CR. >The carriage return code is what moved the print head back to the far >left. Similar keys were defined in EBCDIC ("line feed" was labeled >"index" on some 2740/2741 terminals, a real Selectric holdover). Ah, I had forgotten about the index key. > >The Unix use of linefeed for newline is, technically speaking, >an abomination, but one it's too late to correct *now*... I first encountered this nasty notion of linefeed determining a new record indicator when I was certifying DECnet Phase III. You wouldn't believe the culture shock we experienced when we started receiving ASCII characters from an OS-of-backwards-design without the carriage return! Of course, this same clever OS didn't know what to do with a LF-CR except call it two lines. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: "dave porter" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 2 Jul 1998 13:54:41 GMT Organization: none of the above Lines: 72 Message-ID: <01bda5c0$ebee5190$0ba17392@glastonbury> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> NNTP-Posting-Host: 146.115.161.11 X-Complaints-To: abuse@ultra.net X-Ultra-Time: 2 Jul 1998 13:54:41 GMT X-Newsreader: Microsoft Internet News 4.70.1161 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.internetmci.com!206.229.87.25!news-peer.sprintlink.net!news-backup-east.sprintlink.net!news.sprintlink.net!199.232.56.18!news.ultranet.com!not-for-mail Yeah, but in all the parsers I wrote on TOPS-10 (and I used TOPS-10 long before I'd heard of Unix, naturally), I always treated as ignorable whitespace and treated the vertical format effector (, , ) as the end-of-record mark. So as far as I'm concerned, getting rid of the damn entirely was a good idea. Btw, a lot of the glass ttys I have used could be configured to treat ctrl-J as either or , so on these machines, there really was a single-byte newline operation. I always assumed that this was because, in some standard way of doing things which was not the standard, newline really did exist. (Hey, now I think about it, the Flexowriter had "carriage return" and "newline" keys, but I can't remember whether "newline" was a true newline or what we'd now call linefeed) dave -- For email, please remove the 'w' from my address. Sorry. jmfbahciv@aol.com wrote in article <6nfs2u$n7u$2@ligarius.ultra.net>... > In article , > alderson@netcom5.netcom.com (Richard M. Alderson III) wrote: > >In article <359b0667.176195828@news.bright.net> > deke.spamblock@generous.net > >writes: > > > >>On 30 Jun 98 21:17:20 +0300, "S. T." wrote: > > > >>\n *does* always means newline. > > > >>On MS-DOS systems, a newline consists of CRLF, while on UNIX > >>systems, all you need is line feed. The difference is that > >>MS-DOS was designed with a CRT in > >>mind, while UNIX was designed with TTY in mind. > > > >>If you do a line feed on a TTY, the hardware automatically moves > >>to the left. > >>That's obvious. Why would anyone waste paper? > > > >Umm, I don't know about any particular TTY, but the linefeed and > >vertical tab characters in ASCII were defined to move *only* vertically: > > I do and that guy's all wet. I never encountered a TTY that didn't > need that CR. > > >The carriage return code is what moved the print head back to the far > >left. Similar keys were defined in EBCDIC ("line feed" was labeled > >"index" on some 2740/2741 terminals, a real Selectric holdover). > > Ah, I had forgotten about the index key. > > > > >The Unix use of linefeed for newline is, technically speaking, > >an abomination, but one it's too late to correct *now*... > > I first encountered this nasty notion of linefeed determining > a new record indicator when I was certifying DECnet Phase III. > You wouldn't believe the culture shock we experienced when we > started receiving ASCII characters from an OS-of-backwards-design > without the carriage return! Of course, this same clever OS > didn't know what to do with a LF-CR except call it two lines. > > /BAH > > Sigh! - Subtract a hundred and four for e-mail. > ###### From: Kevin Ashley Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 02 Jul 1998 17:30:53 +0100 Organization: Posted via ULCC Internet Services Lines: 33 Message-ID: <359BB5BD.59E2@ulcc.ac.uk> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <3588C20E.1384425F@tnglwood.demon.co.uk> NNTP-Posting-Host: silver.ulcc.ac.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.01 (X11; I; IRIX 5.3 IP22) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!iol!iol.ie!easynet-tele!nntp.news.xara.net!xara.net!server5.netnews.ja.net!ulcc.ac.uk!not-for-mail Robert Billing wrote: > > Harold Rabbie wrote: > > > drive::[dir,dir,dir...]name.ext;ver > > Not quite. It is IIRC something more like > > node(user password)::drivename:[dir.dir.dir]name.ext;ver > > commas inside the square brackets would break the syntax. Note that the > node name allows implicit remote mount, DEC has something like NFS from > about 1977. The drive name can be a real device or a logical name > (anologous to a unix mount point). > OK, let's get real picky here (apart from the "user password" stuff that someone else has already spotted.) It's name.ext.ver. The fact that it never appears that way, that almost noone who uses VMS realises this, or that it shall pass into oblivion doesn't alter the fact that the One True Operating System gave us 39 character filenames, 39 character extensions and a dot before the version number, and even VMS had to change to accommodate it. There - that feels much better :-) {Crawls back into padded cell and continues work on TECO implementation of TOPS-20 EXEC.} ------------------------------------------------------------------------------ Kevin Ashley K.Ashley@Ulcc.ac.uk Special Projects Manager http://www.ulcc.ac.uk/staff/Kevin+Ashley ULCC ...ukc!ncdlab!K.Ashley (but probably not any more) This is not a signature ###### From: "dave porter" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 2 Jul 1998 18:03:44 GMT Organization: none of the above Lines: 63 Message-ID: <01bda5e3$b6f4aed0$0ba17392@glastonbury> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <3588C20E.1384425F@tnglwood.demon.co.uk> <359BB5BD.59E2@ulcc.ac.uk> NNTP-Posting-Host: 146.115.161.11 X-Complaints-To: abuse@ultra.net X-Ultra-Time: 2 Jul 1998 18:03:44 GMT X-Newsreader: Microsoft Internet News 4.70.1161 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!News.Amsterdam.UnisourceCS!newshunter.cosy.sbg.ac.at!cosy.sbg.ac.at!news-feed.inet.tele.dk!bofh.vszbr.cz!newspeer.monmouth.com!news.ultranet.com!not-for-mail If you're talking about Real Filespecs for Real VMS Programmers, then it was node"user passwd"::devname:name.ext.ver You got the brackets wrong! From what I understand, this really was intended to be the true filespec format. But the RSX heritage of VMS (and all those compatibility-mode utilities) meant that square brackets and all the rest of it was supported and never quite went away. RMS was quite nice about using your preferred brackets. A "set default <>" (change directory to the current directory but you happen to set up the new current directory using pointy brackets) in your login.com went a long way towards hiding the old syntax from your eyes. dave -- For email, please remove the 'w' from my address. Sorry. Kevin Ashley wrote in article <359BB5BD.59E2@ulcc.ac.uk>... > Robert Billing wrote: > > > > Harold Rabbie wrote: > > > > > drive::[dir,dir,dir...]name.ext;ver > > > > Not quite. It is IIRC something more like > > > > node(user password)::drivename:[dir.dir.dir]name.ext;ver > > > > commas inside the square brackets would break the syntax. Note that the > > node name allows implicit remote mount, DEC has something like NFS from > > about 1977. The drive name can be a real device or a logical name > > (anologous to a unix mount point). > > > > OK, let's get real picky here (apart from the "user password" stuff that > someone else has already spotted.) > It's name.ext.ver. The fact that it never appears that way, that almost > noone who uses VMS realises this, or that it shall pass into oblivion > doesn't alter the fact that the One True Operating System gave us > 39 character filenames, 39 character extensions and a dot before the version > number, and even VMS had to change to accommodate it. > > There - that feels much better :-) > {Crawls back into padded cell and continues work on TECO implementation > of TOPS-20 EXEC.} > > ---------------------------------------------------------------------------- -- > Kevin Ashley K.Ashley@Ulcc.ac.uk > Special Projects Manager http://www.ulcc.ac.uk/staff/Kevin+Ashley > ULCC ...ukc!ncdlab!K.Ashley (but probably not any more) > This is not a signature > ###### From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 2 Jul 1998 20:21:24 GMT Organization: The MITRE Corporation Lines: 22 Message-ID: <6ngq44$fah@top.mitre.org> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <01bda5c0$ebee5190$0ba17392@glastonbury> NNTP-Posting-Host: mwunix.mitre.org Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!Supernews60!supernews.com!uunet!in2.uu.net!world!blanket.mitre.org!news.mitre.org!mwunix!jcmorris "dave porter" writes: >(Hey, now I think about it, the Flexowriter had "carriage >return" and "newline" keys, but I can't remember whether >"newline" was a true newline or what we'd now call linefeed) Um...are you sure? The one for which I could dig up the handout just now (the 8-level Flexowriter, used with the PDP-1) had no code for linefeed, with 277 used for "carriage return" (which implemented the \n function). I won't swear that the function didn't exist since I can't find a picture of the keyboard and there are some (deliberate) holes in the data space but it doesn't show up in either the handout or in a cheat sheet that I made for myself showing (presumably) all of the keytops and their corresponding codes. There may have been a function in the interface to the IBM Executive typewriter that was used as a console device, but I don't have the system reference manual handy to verify this. Joe Morris ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 02 Jul 1998 22:38:34 GMT Organization: . Lines: 35 Message-ID: <359cd123.1441678@news.innet.be> References: <6ne5vl$tmn$1@irk.zetnet.co.uk> NNTP-Posting-Host: pool02b-194-7-226-54.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!newsfeed.ecrc.net!newsfeed.nacamar.de!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail Neil Franklin told us > lisard@zetnet.co.uk writes: > > On 1998-06-29 Neil.Franklin@ccw.ch.remove said: > > :Of course any sane language defines false=00000... and true=11111... > > :So & automatically does &&, no need for INTEGER/LOGICAL stuff. > > :Shall we call that signed logicals :-)? > > > > Yes, but & doesn't short circuit, which was the point under > > discussion... once... somewhere... *looks around frantically* > > That comes from joining an thread after its beginning has expired from > my news feed :-). Coming back upon that (well, to be honest, I've been following this thread from the start, but I seem to have missed it too... - how did we come from slash/backslash to this btw?) there _is_ an advantage to having two 'and' operators. if (x1 && x2) is evaluated as (x1 is not zero) AND (x2 is not zero) where x1 nor x2 have to be declared as boolean values. Things you could do are like if(x1 && x2){z1=z/x1; z2=z/x2;} else {z1=1; z2=1;} if (x1 & x2) evaluates as ((x1 bitwise anded with x2) is not zero). Bitmaps and masks come to mind: if (UserClearanceBits & AccessMask){ puts("Access Granted");... Or: how do you do 32 boolean tests in 1 instruction. ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 02 Jul 1998 22:38:35 GMT Organization: . Lines: 41 Message-ID: <359ed3c6.2116578@news.innet.be> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> NNTP-Posting-Host: pool02b-194-7-226-54.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.internetmci.com!195.99.66.215!news-feed1.eu.concert.net!btnet-peer!btnet!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail jmfbahciv@aol.com told us > In article , > alderson@netcom5.netcom.com (Richard M. Alderson III) wrote: > >In article <359b0667.176195828@news.bright.net deke.spamblock@generous.net > >writes: > >>On MS-DOS systems, a newline consists of CRLF, while on UNIX > >>systems, all you need is line feed. The difference is that > >>MS-DOS was designed with a CRT in > >>mind, while UNIX was designed with TTY in mind. > >>If you do a line feed on a TTY, the hardware automatically moves > >>to the left. > >>That's obvious. Why would anyone waste paper? > > > >Umm, I don't know about any particular TTY, but the linefeed and > >vertical tab characters in ASCII were defined to move *only* vertically: > > I do and that guy's all wet. I never encountered a TTY that didn't > need that CR. I met a couple that allowed you to choose (dip switch). Probably designed with unix in mind ;) In my days I did quite some "character mode plotting": on unidirectional printers (I'm thinking of teletypes, early decwriters) it can save you a significant amount of time if you don't have to space all the way from the left to where you were on the previous line: to print out this * * * * * not a single CR would be used (just one backspace-LF between the 2nd and the 3rd line), and the others LF-space[-space]. We used to draw the axis by hand for the same reason. The "intelligent movement" printers that came later spoil programmers too much :) ###### From: ard@p850ug1.demon.co.uk (Tony Duell) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 3 Jul 1998 00:06:57 +0100 Organization: P850 User Group Message-ID: <6nh3qi$15l@p850ug1.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <01bda5c0$ebee5190$0ba17392@glastonbury> <6ngq44$fah@top.mitre.org> NNTP-Posting-Host: p850ug1.demon.co.uk X-NNTP-Posting-Host: p850ug1.demon.co.uk:158.152.97.199 X-Trace: news.demon.co.uk 899423098 nnrp-07:9896 NO-IDENT p850ug1.demon.co.uk:158.152.97.199 X-Complaints-To: abuse@demon.net X-Newsreader: TIN [version 1.2 PL2] Lines: 20 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!news.idt.net!feed2.news.erols.com!erols!woodstock.news.demon.net!demon!news.demon.co.uk!demon!p850ug1.demon.co.uk!not-for-mail Joe Morris (jcmorris@mwunix.mitre.org) wrote: : Um...are you sure? The one for which I could dig up the handout just : now (the 8-level Flexowriter, used with the PDP-1) had no code for : linefeed, with 277 used for "carriage return" (which implemented : the \n function). : I won't swear that the function didn't exist since I can't find a picture My flexowriter (I have one upstairs...) certainly has a combined carriage return and linefeed code. In fact the mechanics requires it. The Carriage return operates by a clutch on the right side of the machine (just behind the toggle switches) engaging and winding up a tape. This pulls the carriage back, and at the same time operates a ratchet pawl that does a linefeed. No easy way to separate the functions. : Joe Morris -tony ###### From: Dennis Ritchie Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 1998 05:16:52 +0100 Organization: Bell Labs, Lucent Technologies Lines: 78 Message-ID: <359C5B33.1F36@bell-labs.com> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Reply-To: dmr@bell-labs.com NNTP-Posting-Host: cebu.cs.bell-labs.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.01 (Win95; U) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!sunqbc.risq.qc.ca!wesley.videotron.net!Pollux.Teleglobe.net!uunet!in5.uu.net!nntphub.cb.lucent.com!news.research.bell-labs.com!news Richard M. Alderson III wrote: > > Umm, I don't know about any particular TTY, but the > linefeed and vertical tab characters in ASCII were > defined to move *only* vertically: The carriage > return code is what moved the print head back to > the far left. Similar keys > were defined in EBCDIC ("line feed" was labeled "index" > on some 2740/2741 terminals, a real Selectric holdover). > > The Unix use of linefeed for newline is, technically > speaking, an abomination,but one it's too late to > correct *now*... I don't have original documents or references to them, but I disagree with this. It is quite true that most Teletype terminals (models 28, 33, 35 and probably earlier ones) used separate characters (and keys) to do the line-space (move paper) and carriage-return (move typebox to left) functions. At least the Teletype model 37, however, could be adjusted to do a "new-line" operation with one keystroke or received character (that is, move typebox to left, move paper.) When set this way, the key to do it was the wide key on the right of the keyboard and the code was 012(8). This was about the same time that ASCII was being formulated (late 60's). The 012(8) control code was given two permissible interpretations: one was "line feed" (move paper up), the other "new line." I don't know why early Teletypes separated the two functions. Certainly ordinary, manual typewriters combined them in that big handle on the right. I conjecture that the timings in the early Teletypes worked out so that when printing text the CR LF pair provided enough time to need no further delays between lines, but don't know if this was the reasoning. It's true that Selectric typewriters had a small "index" key that just moved the paper up, but the nice big key that was almost always used did the "new line" function. It's also true that after doing either move-to-left or move-up many terminals of that (or today's) era need some time to move either paper or bits in a memory. All the above is history and could be clarified or corrected by turning up some documents. The following is design: one way to represent text is as a sequence of records each of a fixed size, or with an explicit size preceding each line of text, or as text with some sort of meta-information. Another way is to include the line-separation information as control characters within the text. This was the way chosen by Multics around 1966 and followed by Unix not long after. The chosen character was the one designated by ANSI (or a predecessor) as interpretable either as "new-line" or as "line-feed." I argue that, given the decision to separate lines by an in-band control character, the further decision to pick exactly one character was correct. It just looks dumb to say that lines are separated by CR-LF, because it begs the question of what to do when these appear in the wrong order or if one appears alone. It looks especially dumb to do as some systems have done, which is to have text files organized as records, but also put CR LF at the end of each record. Many "printing" devices don't, indeed, understand NL and some need delays or padding characters. That's a job for the device driver. Dennis ###### From: cmaurer@dhc.net (Chuck Maurer) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 1998 07:23:37 GMT Organization: Digital Highway (using Airnews!) Lines: 27 Message-ID: <39065F174B9A4D8A.1BA856308827DC59.D67EB6D2BE8E6B02@library-proxy.airnews.net> X-Orig-Message-ID: <359c6efd.16896176@news.dhc.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Abuse-Reports-To: abuse at dhc.net to report improper postings NNTP-Proxy-Relay: librarytest.airnews.net NNTP-Posting-Time: Fri Jul 3 02:23:51 1998 NNTP-Posting-Host: cSqiT+Bl.F%+TMKB (Encoded at Airnews!) X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer.sprintlink.net!news-backup-east.sprintlink.net!news.sprintlink.net!207.69.200.14!firehose.mindspring.net!news.airnews.net!cabal10.airnews.net!cabal1.airnews.net!news-f.iadfw.net!usenet On Thu, 02 Jul 1998 04:10:19 GMT, deke.spamblock@generous.net wrote: >If you do a line feed on a TTY, the hardware automatically moves to the left. >That's obvious. Why would anyone waste paper? On the terminals I have used, a line feed moved the paper up. It did not move the printhead to the left edge. Why would a CRT treat LF differently than a TTY? It initial purpose was to present information without having to constantly provide paper. Eventually, equipment had an configuration option that specified CR is NL or LF is NL. It usually came out of the box turned off. > >On a screen, though, you're wasting nothing. You can always move up and down and >left and right, so a line feed *means* a line feed. > >So \n means newline, and it always does the right thing. It's linefeed which is >not always predictable. > > > > >---- >Nice Guys. Not Married. And they like women with curves. >Sound like you? Join us at GenerousCity. Search the profiles. >Talk on our Discussion list, or join us for live chat. >And you *never* pay anything. ###### From: cmaurer@dhc.net (Chuck Maurer) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 1998 07:23:37 GMT Organization: Digital Highway (using Airnews!) Lines: 27 Message-ID: <39065F174B9A4D8A.1BA856308827DC59.D67EB6D2BE8E6B02@library-proxy.airnews.net> X-Orig-Message-ID: <359c6efd.16896176@news.dhc.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Abuse-Reports-To: abuse at dhc.net to report improper postings NNTP-Proxy-Relay: librarytest.airnews.net NNTP-Posting-Time: Fri Jul 3 02:23:51 1998 NNTP-Posting-Host: cSqiT+Bl.F%+TMKB (Encoded at Airnews!) X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!news-peer.sprintlink.net!news-backup-east.sprintlink.net!news.sprintlink.net!207.69.200.14!firehose.mindspring.net!news.airnews.net!cabal10.airnews.net!cabal1.airnews.net!news-f.iadfw.net!usenet On Thu, 02 Jul 1998 04:10:19 GMT, deke.spamblock@generous.net wrote: >If you do a line feed on a TTY, the hardware automatically moves to the left. >That's obvious. Why would anyone waste paper? On the terminals I have used, a line feed moved the paper up. It did not move the printhead to the left edge. Why would a CRT treat LF differently than a TTY? It initial purpose was to present information without having to constantly provide paper. Eventually, equipment had an configuration option that specified CR is NL or LF is NL. It usually came out of the box turned off. > >On a screen, though, you're wasting nothing. You can always move up and down and >left and right, so a line feed *means* a line feed. > >So \n means newline, and it always does the right thing. It's linefeed which is >not always predictable. > > > > >---- >Nice Guys. Not Married. And they like women with curves. >Sound like you? Join us at GenerousCity. Search the profiles. >Talk on our Discussion list, or join us for live chat. >And you *never* pay anything. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 98 11:43:36 GMT Organization: UltraNet Communications, Inc. Lines: 92 Message-ID: <6nijg7$1ft$1@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> NNTP-Posting-Host: d12.dial-15.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 3 Jul 1998 12:40:39 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!naxos!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!news.ultranet.com!d12 In article <359C5B33.1F36@bell-labs.com>, Dennis Ritchie wrote: >Richard M. Alderson III wrote: > >> >> Umm, I don't know about any particular TTY, but the >> linefeed and vertical tab characters in ASCII were >> defined to move *only* vertically: The carriage >> return code is what moved the print head back to >> the far left. Similar keys >> were defined in EBCDIC ("line feed" was labeled "index" >> on some 2740/2741 terminals, a real Selectric holdover). >> >> The Unix use of linefeed for newline is, technically >> speaking, an abomination,but one it's too late to >> correct *now*... > >I don't have original documents or references to them, >but I disagree with this. > >It is quite true that most Teletype terminals (models >28, 33, 35 and probably earlier ones) used separate >characters (and keys) to do the line-space (move paper) >and carriage-return (move typebox to left) functions. >At least the Teletype model 37, however, could be adjusted >to do a "new-line" operation with one keystroke or >received character (that is, move typebox to left, move >paper.) When set this way, the key to do it was the wide key >on the right of the keyboard and the code was 012(8). > >This was about the same time that ASCII was being formulated >(late 60's). The 012(8) control code was given two permissible >interpretations: one was "line feed" (move paper up), the >other "new line." > >I don't know why early Teletypes separated the two functions. >Certainly ordinary, manual typewriters combined them in >that big handle on the right. I conjecture that the timings >in the early Teletypes worked out so that when printing >text the CR LF pair provided enough time to need no further >delays between lines, but don't know if this was the reasoning. > >It's true that Selectric typewriters had a small "index" key >that just moved the paper up, but the nice big key that >was almost always used did the "new line" function. > >It's also true that after doing either move-to-left or >move-up many terminals of that (or today's) era need some >time to move either paper or bits in a memory. > >All the above is history and could be clarified or corrected >by turning up some documents. > >The following is design: one way to represent text is >as a sequence of records each of a fixed size, or with >an explicit size preceding each line of text, or as text with >some sort of meta-information. > >Another way is to include the line-separation information >as control characters within the text. This was the way >chosen by Multics around 1966 and followed by Unix not >long after. The chosen character was the one designated >by ANSI (or a predecessor) as interpretable either as >"new-line" or as "line-feed." > >I argue that, given the decision to separate lines by >an in-band control character, the further decision to pick >exactly one character was correct. It just looks dumb to >say that lines are separated by CR-LF, because it begs >the question of what to do when these appear in the wrong >order or if one appears alone. It looks especially dumb >to do as some systems have done, which is to have text files >organized as records, but also put CR LF at the end of each >record. I disagree. A carriage return in an ASCII file says move the cursor to the left margin. A line feed says move the cursor down one line. I should be able to describe in my file exactly how I want that file to be displayed. It's up to the hardware device driver to interpret that printing direction to accomodate the particular terminal that's being used (whether it's hard copy, video, screen addressable, etc.). I used to curse TOPS10 for providing the line feed for free (but I understand why they did it...it was just a pain in the ass to have to edit out the character with TECO--bless that editor). Just recently, I felt brave and tried to download a text file. It didn't have carriage returns so displaying the file with a TYPE command produced interesting results. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 98 11:48:53 GMT Organization: UltraNet Communications, Inc. Lines: 26 Message-ID: <6nijq2$1ft$2@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <01bda5c0$ebee5190$0ba17392@glastonbury> NNTP-Posting-Host: d12.dial-15.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 3 Jul 1998 12:45:54 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d12 In article <01bda5c0$ebee5190$0ba17392@glastonbury>, "dave porter" wrote: >Yeah, but in all the parsers I wrote on TOPS-10 (and I >used TOPS-10 long before I'd heard of Unix, naturally), >I always treated as ignorable whitespace and >treated the vertical format effector (, , ) >as the end-of-record mark. Well, there's a huge difference between an end-of-record mark and a display on the terminal. One is read by a program and the other is read by a human. If a human is invovled in the interpretation, then CR should be a part of the text to move the cursor to the left margin. > >So as far as I'm concerned, getting rid of the damn >entirely was a good idea. Phooey. You're suffering from not realizing the difference. It was a common condition :-). /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 98 11:56:11 GMT Organization: UltraNet Communications, Inc. Lines: 70 Message-ID: <6nik7p$1ft$3@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <359ed3c6.2116578@news.innet.be> NNTP-Posting-Host: d12.dial-15.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 3 Jul 1998 12:53:13 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d12 In article <359ed3c6.2116578@news.innet.be>, lucvdv@null.net (Luc Van der Veken) wrote: >jmfbahciv@aol.com told us > >> In article , >> alderson@netcom5.netcom.com (Richard M. Alderson III) wrote: >> >In article <359b0667.176195828@news.bright.net deke.spamblock@generous.net >> >writes: >> >>On MS-DOS systems, a newline consists of CRLF, while on UNIX >> >>systems, all you need is line feed. The difference is that >> >>MS-DOS was designed with a CRT in >> >>mind, while UNIX was designed with TTY in mind. >> >>If you do a line feed on a TTY, the hardware automatically moves >> >>to the left. >> >>That's obvious. Why would anyone waste paper? >> > >> >Umm, I don't know about any particular TTY, but the linefeed and >> >vertical tab characters in ASCII were defined to move *only* vertically: >> >> I do and that guy's all wet. I never encountered a TTY that didn't >> need that CR. > >I met a couple that allowed you to choose (dip switch). >Probably designed with unix in mind ;) Fortunately, I never met one :-)...a dip switched TTY...I have met an UNIX. > >In my days I did quite some "character mode plotting": on >unidirectional printers (I'm thinking of teletypes, early >decwriters) it can save you a significant amount of time if you >don't have to space all the way from the left to where you were >on the previous line: to print out this > * > * > * > * > * >not a single CR would be used (just one backspace-LF between the >2nd and the 3rd line), and the others LF-space[-space]. And that's precisely why the CR should be a part of the character set. You didn't want the display to move to the left margin. What I didn't like about those terminals was that a LF had to be backspaced if the "advance one character position" happened after printing the character. IIR, there were terminals that did it differently. There once was a guy who was trying to get SYSPDY right..he acquired several gray hairs because of terminal twitches like that. > >We used to draw the axis by hand for the same reason. > >The "intelligent movement" printers that came later spoil >programmers too much :) > I agree. But those printers that would write a line whilst its print head was moving back to the left margin caused other kinds of problems. But I don't remember them at the moment. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 98 12:00:34 GMT Organization: UltraNet Communications, Inc. Lines: 39 Message-ID: <6nikfv$1ft$4@ligarius.ultra.net> References: <6m90t9$8k9$1@news.kth.se> <6m984j$he5@canyon.sr.hp.com> <6ma12l$cr4@bgtnsc03.worldnet.att.net> <3588C20E.1384425F@tnglwood.demon.co.uk> <359BB5BD.59E2@ulcc.ac.uk> NNTP-Posting-Host: d12.dial-15.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 3 Jul 1998 12:57:35 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d12 In article <359BB5BD.59E2@ulcc.ac.uk>, Kevin Ashley wrote: >Robert Billing wrote: >> >> Harold Rabbie wrote: >> >> > drive::[dir,dir,dir...]name.ext;ver >> >> Not quite. It is IIRC something more like >> >> node(user password)::drivename:[dir.dir.dir]name.ext;ver >> >> commas inside the square brackets would break the syntax. Note that the >> node name allows implicit remote mount, DEC has something like NFS from >> about 1977. The drive name can be a real device or a logical name >> (anologous to a unix mount point). >> > >OK, let's get real picky here (apart from the "user password" stuff that >someone else has already spotted.) >It's name.ext.ver. The fact that it never appears that way, that almost >noone who uses VMS realises this, or that it shall pass into oblivion >doesn't alter the fact that the One True Operating System gave us >39 character filenames, 39 character extensions and a dot before the >version number, and even VMS had to change to accommodate it. > >There - that feels much better :-) Ahem.....The One True Operating System?!!? [grinning emoticon here that isn't trying to start something but pride prevents silence]. >{Crawls back into padded cell and continues work on TECO implementation >of TOPS-20 EXEC.} Chuckle. I assume your cell is very well padded. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: Dan Strychalski Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 3 Jul 1998 12:19:08 GMT Organization: Cameo Communications, Inc. Lines: 73 Message-ID: <6nii7s$a5v$1@news.seed.net.tw> NNTP-Posting-Host: 192.72.104.4 Originator: dski@ Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!howland.erols.net!spring.edu.tw!feeder.seed.net.tw!news.seed.net.tw!!dski Dennis Ritchie (dmr@bell-labs.com) posted -- dmr> It is quite true that most Teletype terminals (models > 28, 33, 35 and probably earlier ones) used separate > characters (and keys) to do the line-space (move paper) > and carriage-return (move typebox to left) functions. > At least the Teletype model 37, however, could be adjusted > to do a "new-line" operation with one keystroke or > received character (that is, move typebox to left, move > paper.) When set this way, the key to do it was the wide key > on the right of the keyboard and the code was 012(8). > > This was about the same time that ASCII was being formulated > (late 60's). The 012(8) control code was given two permissible > interpretations: one was "line feed" (move paper up), the > other "new line." ASCII was formulated in the first half of the sixties and went through minor tweaks thereafter. From E006-DOC.EXE, available by FTP from ftp.ecma.ch -- Standard ECMA-6 6th Edition - December 1991 7-Bit coded Character Set [...] Brief History Technical Committee TC1 of ECMA met for the first time in December 1960 to prepare standard codes for Input/Output purposes. On 30th April 1965, Standard ECMA-6 was adopted by the General Assembly of ECMA. Subsequent international activities necessitated three revisions of ECMA-6, which were issued in June 1967, July 1970 and August 1973. [...] dmr> I don't know why early Teletypes separated the two functions [line feed and carriage return -- DS]. Quoting from ECMA-6 again -- 7 Composite Graphic Characters Whilst all graphic characters specified in this International Standard are spacing characters, it is possible, by using BACKSPACE or CARRIAGE RETURN to image two or more graphic characters at the same character position (see also annex B.2). The standard describes how Backspace can be used to create the "not equals" symbol, underlining, and composite (for example, "accented") characters. Bolding and strikeout are also frequently done this way. On line printers, which generally cannot backspace, overprinting requires sending Carriage Return with no Line Feed and then spacing over to the overprint position. It cannot be denied that CRLF increases storage and "bandwidth" requirements. On the other hand, it provides greater flexibility and simpler operation on small systems such as the earliest microcomputers, which were rarely networked and could not afford the luxury of special drivers for all the different kinds of printers they might be hooked up to. *Most* printers require CRLF, so files with CRLF (and the occasional unaccompanied CR for some print enhancement) are most likely to produce acceptable hard copy when transmitted directly to a printer. This is probably why CRLF was chosen for CP/M, which led to the same convention being used in MS/PC DOS. dmr> All the above is history and could be clarified or corrected > by turning up some documents. Docs 'R' Us.... Dan Strychalski dski at cameonet, cameo, com, tw (no _x_) In our next episode: FIPS PUB 1-2! ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 03 Jul 1998 19:20:24 GMT Organization: . Lines: 27 Message-ID: <35a02c83.4125976@news.innet.be> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <359ed3c6.2116578@news.innet.be> <6nik7p$1ft$3@ligarius.ultra.net> NNTP-Posting-Host: pool02b-194-7-226-78.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!naxos!news.belnet.be!newsgate.cistron.nl!het.net!news.cs.utwente.nl!newshunter.cosy.sbg.ac.at!cosy.sbg.ac.at!news-feed.inet.tele.dk!bofh.vszbr.cz!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail jmfbahciv@aol.com told us > Fortunately, I never met one :-)...a dip switched TTY...I have > met an UNIX. I was a bit too fast - in a TTY it would be a first time for me too. Almost all dot-matrix printers I knew had them (except maybe for the very oldest), that's what I meant. > >The "intelligent movement" printers that came later spoil > >programmers too much :) > > I agree. But those printers that would write a line > whilst its print head was moving back to the left margin > caused other kinds of problems. But I don't remember them > at the moment. Like characters not being quite aligned vertically (especially noticable at the line graphics characters that would connect to each other)? Bidirectional is not what I meant with intelligent though: I was thinking of the ones that wouldn't obediently move the print head upon receipt of every whitespace character (CR, space, backspace; LF would be executed directly), until they received something printable, and would then move directly to the right column. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sat, 04 Jul 98 11:10:40 GMT Organization: UltraNet Communications, Inc. Lines: 49 Message-ID: <6nl5um$opk$2@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6nfs2u$n7u$2@ligarius.ultra.net> <359ed3c6.2116578@news.innet.be> <6nik7p$1ft$3@ligarius.ultra.net> <35a02c83.4125976@news.innet.be> NNTP-Posting-Host: d12.dial-33.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 4 Jul 1998 12:07:50 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d12 In article <35a02c83.4125976@news.innet.be>, lucvdv@null.net (Luc Van der Veken) wrote: >jmfbahciv@aol.com told us > >> Fortunately, I never met one :-)...a dip switched TTY...I have >> met an UNIX. > >I was a bit too fast - in a TTY it would be a first time for me >too. Almost all dot-matrix printers I knew had them (except maybe >for the very oldest), that's what I meant. Ah, OK. I hated the dot matrixed printers; the quality was lousy. As it this monitor I'm looking at. I manage to see the dots rather than mush them all together. Laser was the best thing that happened to print quality. > >> >The "intelligent movement" printers that came later spoil >> >programmers too much :) >> >> I agree. But those printers that would write a line >> whilst its print head was moving back to the left margin >> caused other kinds of problems. But I don't remember them >> at the moment. > >Like characters not being quite aligned vertically (especially >noticable at the line graphics characters that would connect to >each other)? Yes. And, I think there were programming problems, too. Possibly having to do with the fill? I don't remember. The fill count was different depending on which direction the printing was done. I'm talking off the top of my head here. > >Bidirectional is not what I meant with intelligent though: I was >thinking of the ones that wouldn't obediently move the print head >upon receipt of every whitespace character (CR, space, backspace; >LF would be executed directly), until they received something >printable, and would then move directly to the right column. > Oh, bletch. I see. I understand the thinking behind that but IMO it sucks. Of course, I spent a lifetime keeping programmers who have never done data entry honest :-). /BAH Sigh! - Subtract a hundred and four for e-mail. ###### Newsgroups: alt.folklore.computers From: Derry Hamilton Subject: Re: slash / backslash In-Reply-To: <1807.488T427T5963300@sky.bus.com> X-Nntp-Posting-Host: tardis.tardis.ed.ac.uk Content-Type: TEXT/PLAIN; charset=US-ASCII Message-ID: Sender: cnews@dcs.ed.ac.uk (UseNet News Admin) Organization: Department of Computer Science, Edinburgh University References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> Mime-Version: 1.0 Date: Sat, 4 Jul 1998 12:16:13 GMT Lines: 15 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!rill.news.pipex.net!pipex!server1.netnews.ja.net!newsfeed.ed.ac.uk!dcs.ed.ac.uk!tardis.tardis.ed.ac.uk!rasilon On 3 Jul 1998, Charlie Gibbs wrote: > I would like to ask the Windows stalwarts out there, many of whom > are no doubt defending the CR/LF line terminator, just when was > the last time they sent a file straight to a printer without going > through a driver. "I don't think we're in CP/M anymore, Toto." Whilst I wouldn't claim to be a Windows stalwart, the last time I sent a raw file to the printer was yesterday, I consider "copy win.ini lpt1" a standard test when windows isn't behaving itself, as always... (anybody in the Edinburgh area fancy hiring a UNIX sysadmin? [LINUX/Solaris]:-) Derry Hamilton rasilon@tardis.ed.ac.uk ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sat, 04 Jul 98 13:00:51 GMT Organization: UltraNet Communications, Inc. Lines: 79 Message-ID: <6nlcd9$tre$3@ligarius.ultra.net> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> NNTP-Posting-Host: d5.dial-14.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 4 Jul 1998 13:58:01 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!netnews.com!feed2.news.erols.com!erols!news.ultranet.com!d5 In article <35a347b1.10040406@news.innet.be>, lucvdv@null.net (Luc Van der Veken) wrote: >"Charlie Gibbs" told us > >> In article <359C5B33.1F36@bell-labs.com> dmr@bell-labs.com >> (Dennis Ritchie) writes: >> >> >I argue that, given the decision to separate lines by >> >an in-band control character, the further decision to pick >> >exactly one character was correct. >> >> Agreed! There's one effect of MS-DOS's CR/LF line terminator >> that nobody has mentioned yet. On output, it's necessary to >> translate \n to \r\n, and the reverse on input. But we can't >> do this all the time; otherwise it would be impossible to correctly >> write a binary field containing 0x0A. This leads to the silliness >> of having separate "text" and "binary" modes, which IMHO is the >> second-worst wart of the MS-DOS/Windows file systems. (The worst >> one is their sensitivity to the 0x1A byte, which has lost me a lot >> of data.) Try doing an fseek() on an MS-DOS file opened in text >> mode if you want to get _really_ lost. > >IMO, it's all caused by MS-DOS trying to adhere to the ASCII >standard a bit more than other OSes, where the use of C makes >that impossible by defining a single '\n' character that has no >ASCII equivalent. > >If I'm not mistaken, C originated in the unix world so it >inherited this peculiarity from unix (please correct me if I'm >wrong, Dennis, this is _not_ meant to upset you), making it a bit >less than perfect for at least _some_ other oses. Oh, I'm not trying to upset anybody, either. This is a subject that always had a personal point of view in my area. Each point of view depended on how that particular person thought of a stream of data. My point of arguing is to delineate between data and displayed stuff; in other words, there's a huge difference between what a program sees and what a human being sees. And one of my main gripes of these new-fangled OSes is the unbidden decisions that are made for the user. We had a guy who had his own idea about what our timesharing OS should do. His work was undone and he received the suggestion to find another job. > >CR - "Carriage return": it _shouldn't_ move the paper up. >LF - "Line Feed": it _shouldn't_ move the carriage. Right. >Whether this was a good choice when they created the ASCII >standard, is another subject - personally, if they had to split >up NL into CR and LF, I'd like to have seen the three codes >exist. > >0x1A (which doesn't have any effect in binary mode) is known as >EOF - "End of File": taking ASCII literally it should mean just >that. In a file it doesn't serve much purpose, but in a stream in >general it has its use: I find it a nice feature to be able to >send an EOF on stdin from the keyboard, using the standard ASCII >control character (CTRL/Z) for it instead of some other randomly >picked control code (what was it again - CTRL/D, End of Tape?) EOF and EOT had to have different behaviours. EOF says, "This denotes the end of the file...do what you have to do to preserve it" to the software reading the data. EOT says, "This is the end of the tape; when you read the next character, it's a continuation of the input". EOT should never imply end of file. Consider the example of feeding in multiple paper tapes. It was impractical to insist that one file had to reside on a single run of paper tape. That implied that only one data enterer could work on a file of data. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: Dan Strychalski Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 4 Jul 1998 14:46:33 GMT Organization: Cameo Communications, Inc. Lines: 15 Message-ID: <6nlf89$nea$1@news.seed.net.tw> NNTP-Posting-Host: 192.72.104.4 Originator: dski@ Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!netnews.com!howland.erols.net!spring.edu.tw!feeder.seed.net.tw!news.seed.net.tw!!dski Luc Van der Veken (lucvdv@null.net) wrote -- > 0x1A (which doesn't have any effect in binary mode) is known as > EOF - "End of File": taking ASCII literally it should mean just > that. ASCII has End of Text (03h, ^C), End of Transmission (04h, ^D), End of Block (17h, ^W), End of Medium (19h, ^Y), and File Separator (1Ch, ^\). It does not have End of File. 1Ah (^Z) is Substitute. CP/M needed an EOF marker, and its creators choose 1Ah. MS/PC DOS did *not* need an EOF marker, but its creators decided to let 1Ah act as one anyway. Let us not confuse system-specific definitions with real standards. Dan Strychalski dski at cameonet, cameo, com, tw (no _x_) ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sat, 04 Jul 1998 15:32:49 GMT Organization: . Lines: 126 Message-ID: <35a347b1.10040406@news.innet.be> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> NNTP-Posting-Host: pool02b-194-7-226-239.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!howland.erols.net!newsfeed.internetmci.com!158.43.192.17!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail "Charlie Gibbs" told us > In article <359C5B33.1F36@bell-labs.com> dmr@bell-labs.com > (Dennis Ritchie) writes: > > >I argue that, given the decision to separate lines by > >an in-band control character, the further decision to pick > >exactly one character was correct. > > Agreed! There's one effect of MS-DOS's CR/LF line terminator > that nobody has mentioned yet. On output, it's necessary to > translate \n to \r\n, and the reverse on input. But we can't > do this all the time; otherwise it would be impossible to correctly > write a binary field containing 0x0A. This leads to the silliness > of having separate "text" and "binary" modes, which IMHO is the > second-worst wart of the MS-DOS/Windows file systems. (The worst > one is their sensitivity to the 0x1A byte, which has lost me a lot > of data.) Try doing an fseek() on an MS-DOS file opened in text > mode if you want to get _really_ lost. IMO, it's all caused by MS-DOS trying to adhere to the ASCII standard a bit more than other OSes, where the use of C makes that impossible by defining a single '\n' character that has no ASCII equivalent. If I'm not mistaken, C originated in the unix world so it inherited this peculiarity from unix (please correct me if I'm wrong, Dennis, this is _not_ meant to upset you), making it a bit less than perfect for at least _some_ other oses. CR - "Carriage return": it _shouldn't_ move the paper up. LF - "Line Feed": it _shouldn't_ move the carriage. Whether this was a good choice when they created the ASCII standard, is another subject - personally, if they had to split up NL into CR and LF, I'd like to have seen the three codes exist. 0x1A (which doesn't have any effect in binary mode) is known as EOF - "End of File": taking ASCII literally it should mean just that. In a file it doesn't serve much purpose, but in a stream in general it has its use: I find it a nice feature to be able to send an EOF on stdin from the keyboard, using the standard ASCII control character (CTRL/Z) for it instead of some other randomly picked control code (what was it again - CTRL/D, End of Tape?) If you start treating control codes differently from what they were defined as (as opposed to not implementing them because you see no use), you can't use the descriptor "ASCII file" for your text files anymore because they aren't. If MS-DOS would be the only OS that does things the way it does, I might look differently upon this matter, but right now it's (IMHO) OSes like unix and (obafc) ye olde Radio Shack's TRSDOS, rip, that are the exorbitant ones. IIRC, TRSDOS used 0x0d where Unix uses 0x0a - how's that for standardisation? As for fseek - you're partly right. If you really did get lost however, I'd recommend rereading the docs (just the little quote here - afair there has been something like this in the manuals for every C compiler I ever used under DOS): : For streams opened in text mode, fseek has limited use, because : carriage return–linefeed translations can cause fseek to produce : unexpected results. The only fseek operations guaranteed to work : on streams opened in text mode are: : :- Seeking with an offset of 0 relative to any of the origin : values. :- Seeking from the beginning of the file with an offset value : returned from a call to ftell. > Having a single-byte record terminator allows the ideal situation > where a file is always just a string of bytes - no more and no less. Absolutely right, but things like ASCII text files cease existing right at this point. > >It just looks dumb to say that lines are separated by CR-LF, > >because it begs the question of what to do when these appear > >in the wrong order or if one appears alone. Take the meaning of those codes literally, and there is no wrong order, and it becomes quite normal for them to appear alone. Lines are "terminated" (meaning you move to another line) by LF. CR is used to go back to the left margin. > Amen. I've had to write a lot of extra code to deal with these > situations - code that would be necessary if the line terminator > were a single byte. > > >Many "printing" devices don't, indeed, understand NL and > >some need delays or padding characters. That's a job > >for the device driver. Agree, for delays and padding, NOT for expanding LF to CR/LF. I would agree if you picked some other, non-ASCII code for NL. > I would like to ask the Windows stalwarts out there, many of whom > are no doubt defending the CR/LF line terminator, just when was > the last time they sent a file straight to a printer without going > through a driver. "I don't think we're in CP/M anymore, Toto." In windows, never. In DOS, often. The last time was under Linux. I got a nice stair-stepping effect. :) When I send a CR alone to a printer, I _want_ it to overtype. When I send an LF alone, I _want_ it to continue in the same column on the next line. When I send a stream of graphic data to a printer (I'll be honest, it's years ago that I last did that), I don't want to have to find out first if the driver that happens to be installed recognizes the graphics format for that printer, so it won't start adding in bytes that shouldn't be there. A printer driver has no right to add in characters of its own if you're feeding it ascii text, nor if you're feeding it binary data the printer would understand by itself. In fact, in either of these cases, you shouldn't even need a driver (except maybe, for some very old printers, to insert some delay NULs or RUBOUTs). ###### From: spu@dsds.demon.co.uk (David Spencer) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sat, 04 Jul 1998 15:56:24 GMT Message-ID: <359e4fa6.17136270@news.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <6nijg7$1ft$1@ligarius.ultra.net> NNTP-Posting-Host: dsds.demon.co.uk X-NNTP-Posting-Host: dsds.demon.co.uk:194.222.44.119 X-Trace: news.demon.co.uk 899567821 nnrp-04:26194 NO-IDENT dsds.demon.co.uk:194.222.44.119 X-Complaints-To: abuse@demon.net X-Newsreader: Forte Free Agent 1.1/16.230 Lines: 79 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!howland.erols.net!woodstock.news.demon.net!demon!news.demon.co.uk!demon!dsds.demon.co.uk!not-for-mail The esteemed jmfbahciv@aol.com wrote: >A carriage return in an ASCII file says move the cursor >to the left margin. A line feed says move the cursor down one line. I disagree. A byte of value 0x0D in a file has no meaning of "Carriage Return" unless and until the file becomes a stream of data in the general direction of a device which interprets 0x0D as "go to the left margin". The most important use of a filestore is *not* to store preformatted output (as Mr /BAH assumes), but to store generalised data for manipulation by programs. That is why the widely celebrated Dennis Ritchie wrote: >I argue that, given the decision to separate lines by >an in-band control character, the further decision to pick >exactly one character was correct. It just looks dumb to >say that lines are separated by CR-LF, because it begs >the question of what to do when these appear in the wrong >order or if one appears alone. It looks especially dumb >to do as some systems have done, which is to have text files >organized as records, but also put CR LF at the end of each >record. If data is naturally organised into records, then there is a choice to be made between out-of-band record lengths or in-band record separators. VMS (for example) chooses the former and Unix (for example) chooses the latter. However, the advantage is with Unix: you can store structured data in unstructured files, but not vice versa. And even then, on Multics and Unix it is only a subset of functions within the high level language I/O libraries (ioa_ (IIRC) and libc respectively) which give a stuff about embedded LFs. This is in no way compulsory. You want embedded CRs or record lengths, fine, just write your own calls to iox_ (IIRC) or read(2). The esteemed jmfbahciv@aol.com wrote further: >I should be able to describe in my file exactly how I want that file >to be displayed. If you want that, you should [1] use Acrobat, [2] force the USA to use A4 paper like everyone else, and [3] turn your monitor on its side. Anything else from ASCII up to HTML gives greater versatility when a document is rendered for display, but at the price of less control. ASCII is neither a sufficiently well defined nor a sufficiently complete notation to describe all possible states of all possible displays. >It's up to the hardware device driver to interpret >that printing direction to accomodate the particular terminal that's >being used (whether it's hard copy, video, screen addressable, etc.). However, in the real world it is difficult to provide drivers for the cartesian product of file formats and display devices, and so sometimes we have to use a lowest common denominator format like unfiltered 7-bit ASCII. This is why Teletypes, VDUs, laser printers, and even xterm windows all have adjustable visual interpretation of both CR and LF. >I used to curse TOPS10 for providing the line feed for free (but I >understand why they did it...it was just a pain in the ass to have to >edit out the character with TECO--bless that editor). Okay so we had it tough in the old days, but hey, that's how we earned our pensions! >Just recently, I felt brave and tried to download a text file. It >didn't have carriage returns so displaying the file with a TYPE >command produced interesting results. Errrr this sounds like a particularly luserish helldesk call. You downloaded exactly what format of file, from what system to what system, using which options within which utility, by sucking or blowing, to what format of file, using which operating system's TYPE command, onto what kind of display, configured in what manner, resulting in what kind of interest? At many of those junctures, a more felicitous and less brave choice may have substituted utility for interest. -- Dave Spencer "I tried living in the real world instead of C shell, Romford, Essex but I was bored before I even began" d@dsds.demon.co.uk Deltics and Multics and that sort of stuff at http://www.dsds.demon.co.uk/ ###### From: cbh@REMOVE_THIS.teabag.demon.co.uk (Chris Hedley) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 4 Jul 1998 19:52:29 GMT Organization: teabag Message-ID: <6nm15t$tk$4@teabag.demon.co.uk> References: <6ne5vl$tmn$1@irk.zetnet.co.uk> <359cd123.1441678@news.innet.be> NNTP-Posting-Host: localhost X-NNTP-Posting-Host: teabag.demon.co.uk:193.237.4.110 X-Trace: news.demon.co.uk 899586870 nnrp-03:10221 NO-IDENT teabag.demon.co.uk:193.237.4.110 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Newsreader: knews 1.0b.0 Lines: 13 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!woodstock.news.demon.net!demon!dispose.news.demon.net!demon!news.demon.co.uk!demon!teabag.demon.co.uk!not-for-mail In article <359cd123.1441678@news.innet.be>, lucvdv@null.net (Luc Van der Veken) writes: > if(x1 && x2){z1=z/x1; z2=z/x2;} else {z1=1; z2=1;} Since I'm in a going-off-topic sort of a mood... I discovered ages ago when I was searching for economy of keypresses (a Unix fundamental and all that...) that lists of commands, ie { z1 = 1; z2 = 1; } could be more lazily entered as z1 = 1, z2 = 1 (okay, I know this could also be z1 = z2 = 1, but that's not the point here) Is using a comma as a sort of continuation statement actually considered acceptable as far as standards go, or was I using a weird (also pre-ANSI) compiler? Chris. ###### Newsgroups: alt.folklore.computers From: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Subject: Re: slash / backslash Message-ID: <1998Jul4.202028.23384@lorelei.approve.se> Originator: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Sender: hoh@lorelei.approve.se.NO_JUNK_EMAIL (Goran Larsson) Organization: [1] + 5934 done /bin/rm -rf ~/ & X-No-Archive: yes X-Newsreader: trn 4.0-test66 (4 June 1998) References: <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> Lines: 37 X-Sender: s-64812@dialup239-11-1.swipnet.se X-Complaints-To: news-abuse@swip.net Date: Sat, 04 Jul 1998 21:50:21 GMT NNTP-Posting-Host: 130.244.239.161 NNTP-Posting-Date: Sat, 04 Jul 1998 23:50:21 MET DST Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!newsfeed1.swip.net!swipnet!nntpserver.swip.net!not-for-mail In article <35a347b1.10040406@news.innet.be>, Luc Van der Veken wrote: | 0x1A (which doesn't have any effect in binary mode) is known as | EOF - "End of File": taking ASCII literally it should mean just | that. In a file it doesn't serve much purpose, but in a stream in The ASCII control code at position 0x1A (control-Z) has the meaning SUB - Substitute character for one in error and what that has to do with end-of-file is beyond me. Perhaps control-Z is known as EOF in your private ASCII standard? | general it has its use: I find it a nice feature to be able to | send an EOF on stdin from the keyboard, using the standard ASCII | control character (CTRL/Z) for it instead of some other randomly | picked control code (what was it again - CTRL/D, End of Tape?) The ASCII control code at position 0x04 (control-D) has the meaning EOT - End of transmission and that seems to be a perfectly reasonable way to tell the device driver for the keyboard that the end-of-file has been reached. | If you start treating control codes differently from what they | were defined as (as opposed to not implementing them because you | see no use), you can't use the descriptor "ASCII file" for your | text files anymore because they aren't. People living in glass houses shouldn't throw stones... :-) -- Goran Larsson hoh AT approve DOT se I was an atheist, http://home1 DOT swipnet DOT se/%7Ew-12153/ until I found out I was God. ###### From: deke.spamblock@generous.net Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sat, 04 Jul 1998 21:51:46 GMT Organization: GenerousCity is a virtue - find romance at http://generous.net Lines: 36 Message-ID: <359ea0c6.20753501@news.bright.net> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> NNTP-Posting-Host: paul-cas2-cs-28.dial.bright.net X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!howland.erols.net!vixen.cso.uiuc.edu!NewsNG.Chicago.Qual.Net!jamie!Qual.Net!news.bright.net!not-for-mail On Sat, 04 Jul 1998 15:32:49 GMT, lucvdv@null.net (Luc Van der Veken) wrote: }IMO, it's all caused by MS-DOS trying to adhere to the ASCII }standard a bit more than other OSes, where the use of C makes }that impossible by defining a single '\n' character that has no }ASCII equivalent. To be fair, when Tim Patterson wrote QDOS, he was simply porting CP/M to an 8086-based S-100 system. And when Gary Kildall wrote CP/M, it was a world where Kilobaud advertised kits to convert typewriters to printers. (As far as that goes, I bought an Olympia "StarType" typewriter a decade later that had a port to attach a printer cable.) The IBM Selectric typewriter had an "express" key, but AFAIK, it was the only one that did that. Manual typewriters, of course, automatically added an LF to a CR, and it was impossible to do a CR without LF in a linotype. The most common output was probably an ASR-33. Who could afford a DECwriter? They published an article by Don Lancaster on how to build a new-fangled "glass tty" and Wayne Green complained that they kept getting more and more articles submitted on converting Baudot devices to microcomputers. Nobody was "trying to adhere to the ASCII standard a bit more" - they were just trying to do *anything* that worked.... Even with as many old-timers as we have here, I wonder how many people are old enough to remember having to configure micro software to the unique commands your computer used to control the screen. I thought it was great when so many manufacturers started emulating the H89! Deke ---- Nice Guys. Not Married. And they like women with curves. Sound like you? Join us at GenerousCity. Search the profiles. Talk on our Discussion list, or join us for live chat. And you *never* pay anything. http://generous.net ###### From: Dennis Ritchie Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 1998 01:40:03 +0100 Organization: Bell Labs, Lucent Technologies Lines: 16 Message-ID: <359ECB63.3B1F@bell-labs.com> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> Reply-To: dmr@bell-labs.com NNTP-Posting-Host: cebu.cs.bell-labs.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.01 (Win95; U) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!news-raspail.gip.net!news-peer.gip.net!news.gsl.net!gip.net!newsfeed.internetmci.com!199.117.161.1!csn!nntp-xfer-1.csn.net!nntphub.cb.lucent.com!news.research.bell-labs.com!news Luc Van der Veken wrote: > If I'm not mistaken, C originated in the unix world so it > inherited this peculiarity from unix (please correct me if I'm > wrong, Dennis, this is _not_ meant to upset you), making it a bit > less than perfect for at least _some_ other oses. C did originate around 1971-73 in the Unix world. Other languages and systems (BCPL, B; late CTSS, Multics) were earlier and were the direct influence for choosing the single new-line character for separating lines. I regret that much later systems went astray. That's their problem. Dennis ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 1998 09:23:18 +0100 Organization: Tanglewood Message-ID: <359F37F6.34AE99F6@tnglwood.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <6nijg7$1ft$1@ligarius.ultra.net> <359e4fa6.17136270@news.demon.co.uk> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899628002 nnrp-11:22595 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 16 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail David Spencer wrote: > made between out-of-band record lengths or in-band record separators. VMS > (for example) chooses the former and Unix (for example) chooses the > latter. However, the advantage is with Unix: you can store structured > data in unstructured files, but not vice versa. However, under VMS, there is no difference in structure between a binary and a text file, both may be edited with the same tools, so the advantages are not all one way. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: spu@dsds.demon.co.uk (David Spencer) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 1998 10:08:18 GMT Message-ID: <359f4da0.509099@news.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <6nijg7$1ft$1@ligarius.ultra.net> <359e4fa6.17136270@news.demon.co.uk> <359F37F6.34AE99F6@tnglwood.demon.co.uk> NNTP-Posting-Host: dsds.demon.co.uk X-NNTP-Posting-Host: dsds.demon.co.uk:194.222.44.119 X-Trace: news.demon.co.uk 899633308 nnrp-06:20994 NO-IDENT dsds.demon.co.uk:194.222.44.119 X-Complaints-To: abuse@demon.net X-Newsreader: Forte Free Agent 1.1/16.230 Lines: 26 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!newspump.monmouth.com!newspeer.monmouth.com!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!dsds.demon.co.uk!not-for-mail Robert Billing wrote: >David Spencer wrote: > >> made between out-of-band record lengths or in-band record separators. VMS >> (for example) chooses the former and Unix (for example) chooses the >> latter. However, the advantage is with Unix: you can store structured >> data in unstructured files, but not vice versa. > > However, under VMS, there is no difference in structure between a >binary and a text file, both may be edited with the same tools, so the >advantages are not all one way. But that goes for Unix too! And I'm not convinced about RMS file formats. There do exist some formats that can be persuaded to hold unstructured data, which of course begs the question as to what the other formats are for. Robert, if I pretended that I K Brunel invented unstructured file formats, would that help you agree with me? (After all, it's just as historically accurate as those NASDAQ ads. We might get away with it) -- Dave Spencer "I lost my bag in Newport Pagnell" Romford, Essex d@dsds.demon.co.uk Deltics and Multics and that sort of stuff at http://www.dsds.demon.co.uk/ ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 1998 12:30:18 +0100 Organization: Tanglewood Message-ID: <359F63CA.3BD0546E@tnglwood.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <6nijg7$1ft$1@ligarius.ultra.net> <359e4fa6.17136270@news.demon.co.uk> <359F37F6.34AE99F6@tnglwood.demon.co.uk> <359f4da0.509099@news.demon.co.uk> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899642130 nnrp-08:18045 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 28 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail David Spencer wrote: > But that goes for Unix too! And I'm not convinced about RMS file formats. > There do exist some formats that can be persuaded to hold unstructured > data, which of course begs the question as to what the other formats are > for. Yes, but not in the same way. However I think it's just a question of the world you grew up in. I've used DEC kit for so long, and am now migrating to various unices, and I find that *not* having a header on each file to describe the data structure inside it is rather strange. OTOH I can appreciate the unix approach, in which a file is just a file, and you don't *have* to know what its record structure is most of the time. The virtue of RMS is that it give you a lot of things you would have to create by hand if you did them on unix, however adding an RMS layer to unix would really not be too difficult- somebody's probably done it by now. If you want to have a lot of users accessing the same file at the same time, RMS is the easy way to do it. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: Dan Strychalski Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 5 Jul 1998 12:44:47 GMT Organization: Cameo Communications, Inc. Lines: 21 Message-ID: <6nnsfv$gbv$1@news.seed.net.tw> NNTP-Posting-Host: 192.72.104.4 Originator: dski@ Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!nntp.abs.net!news.cetlink.net!serv.hinet.net!spring.edu.tw!feeder.seed.net.tw!news.seed.net.tw!!dski Luc Van der Veken (lucvdv@null.net) wrote -- > After checking out my ASCII chart (like I should have done > earlier) I can only admit you're right about SUB. I don't > remember exactly where I got the EOF meaning - probably in some > OS that started calling it that (DOS-yes, but it was before that- > CP/M? I almost see myself sitting in front of a teletype when I > think of CTRL/Z: could it have been a PDP-8 system?) > > I even remember "ASCII" charts that _listed_ it as EOF. > > CTRL/D is end of tape, however - end of transmission is CTRL/C. 03h (^C) is ETX or, more recently (per ISO), EX, End of TeXt. 04h (^D) is EOT or, more recently (per ISO), ET, End of Transmission. I recall seeing End of Tape for 04h/^D somewhere; I'm assuming it's an old definition, and I request substantiated correction if I'm wrong. Dan Strychalski dski at cameonet, cameo, com, tw (no _x_) ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 1998 13:38:30 +0100 Organization: Tanglewood Message-ID: <359F73C6.3499DECC@tnglwood.demon.co.uk> References: <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> <35a62cdb.6975945@news.innet.be> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899708101 nnrp-02:15619 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 19 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-ber1.dfn.de!news-lei1.dfn.de!news-nue1.dfn.de!uni-erlangen.de!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail Luc Van der Veken wrote: > remember exactly where I got the EOF meaning - probably in some > OS that started calling it that (DOS-yes, but it was before that- > CP/M? I almost see myself sitting in front of a teletype when I > think of CTRL/Z: could it have been a PDP-8 system?) I wonder if the practice of using CTRL/C as break and CTRL/Z as EOF has something to do with the old teleprinter practice of using NNNN for start of message and ZCZC for end of message? I do mean teleprinter, not teletype. This is the sort of practice that was common with 5 level code before ASCII. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 05 Jul 98 13:42:50 GMT Organization: UltraNet Communications, Inc. Lines: 30 Message-ID: <6no388$mea$1@ligarius.ultra.net> References: <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> <35a62cdb.6975945@news.innet.be> NNTP-Posting-Host: d4.dial-12.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 5 Jul 1998 14:40:08 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!howland.erols.net!feed2.news.erols.com!erols!news.ultranet.com!d4 In article <35a62cdb.6975945@news.innet.be>, lucvdv@null.net (Luc Van der Veken) wrote: >hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) told us > >> People living in glass houses shouldn't throw stones... :-) > >After checking out my ASCII chart (like I should have done >earlier) I can only admit you're right about SUB. I don't >remember exactly where I got the EOF meaning - probably in some >OS that started calling it that (DOS-yes, but it was before that- >CP/M? I almost see myself sitting in front of a teletype when I >think of CTRL/Z: could it have been a PDP-8 system?) > >I even remember "ASCII" charts that _listed_ it as EOF. R PIP *FOO.FOO_TTY: Type in whatever you want to then type ^Z Now the ^Z were the characters displayed when a Z was typed. It told the program to close the file. It was a quick and dirty way to create a short file using the program called PIP (which ran on every PDP-nn). Remember? :-) /BAH Sigh! - Subtract a hundred and four for e-mail. ###### Newsgroups: alt.folklore.computers From: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Subject: Re: slash / backslash Message-ID: <1998Jul5.154041.617@lorelei.approve.se> Originator: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Sender: hoh@lorelei.approve.se.NO_JUNK_EMAIL (Goran Larsson) Organization: [1] + 5934 done /bin/rm -rf ~/ & X-No-Archive: yes X-Newsreader: trn 4.0-test66 (4 June 1998) References: <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> <35a62cdb.6975945@news.innet.be> Lines: 21 X-Sender: s-64812@dialup84-11-13.swipnet.se X-Complaints-To: news-abuse@swip.net Date: Sun, 05 Jul 1998 15:45:08 GMT NNTP-Posting-Host: 130.244.84.173 NNTP-Posting-Date: Sun, 05 Jul 1998 17:45:08 MET DST Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!masternews.telia.net!newsfeed1.swip.net!swipnet!nntpserver.swip.net!not-for-mail In article <35a62cdb.6975945@news.innet.be>, Luc Van der Veken wrote: > I even remember "ASCII" charts that _listed_ it as EOF. Must have been a forgery then, or? > CTRL/D is end of tape, however - end of transmission is CTRL/C. From the same bogous "ASCII" chart? Control-C, 0x03, is ETX - End of text. Control-D, 0x04, is EOT - End of transmission. There is no "End of file" or "End of tape" in ASCII. The closest we get is control-Y, 0x19, EM - End of medium. -- Goran Larsson hoh AT approve DOT se I was an atheist, http://home1 DOT swipnet DOT se/%7Ew-12153/ until I found out I was God. ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 5 Jul 1998 21:21:59 GMT Message-ID: <6noqpn$drt$1@irk.zetnet.co.uk> References: NNTP-Posting-Host: man-153.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 899673719 14205 194.247.40.195 (5 Jul 1998 21:21:59 GMT) NNTP-Posting-Date: 5 Jul 1998 21:21:59 GMT X-Everything: Net-Tamer V 1.08X Lines: 70 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!wuff.mayn.de!newsfeed.nacamar.de!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail On 1998-07-02 Neil.Franklin@ccw.ch.remove said: :> Yes, but & doesn't short circuit, which was the point under :> discussion... once... somewhere... *looks around frantically* :That comes from joining an thread after its beginning has expired :from my news feed :-). tee hee :> Welcome back from holiday (says the guy who didn't even notice your absence... oops). :> :And of course :> :a=flag&integer :> :replaces :> :if flag then a=integer else a=0 endif :> :Messy but consise, fast and compact, a.k.a. Forth. :> Forth-79 defined the value returned by 0< as 0 or 1. All the :>subsequent Forths had it as -1, but there's always a catch. :> Of :>course if it matters you can define :I was thinking of cmFORTH (the one Moore wrote for the NC4000 chip). :That would be based on Forth-83. That would be based on nothing else on the planet, you mean! It's a beautiful version of Forth, provided you can happily think of such things as vocabularies as optional extras. Played with Pygmy? :But I think the Forth-79 based stuff on the 6502 (C64) also used :all-1s, but memory is fading on this one. Hmm. I'll just check this. I have MVP-FORTH ready and waiting to be sparked up... :> but what is even more fun is to use that approach in defining :>low-level Forth words like 0<, MAX or 0BRANCH... ;> I believe :>that it's possible to write an entire Forth kernel without using :>a single conditional branch, which should theoretically have some :>advantages on a heavily pipelined system. :Should be possible. Replacing conditional jumps with a few masking :instructions is possible. Actuall the ARM simply allows any :instruction to be conditional so you simply arange for the trua and :false cases to appear inline with the appropriate conditionals. :But on the NC4000 (not pipelined at all, not even memory access :interleaved with instruction decode) 0< and 0BRANCH (simply called :IF) are single word opcodes (no implementing there) and MIN/MAX :simply uses: :: MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; :My attempt at non-conditional would be: :: MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; :But I think that would require quite an large penalty on :conditionals for this version to be faster. :OK, enough of scaring people :-). :> :I am surprised that lisard missed that one :-). :> Well, since I've only just discovered this sequence of posts - I :>only get to read after 7.30pm, you know! - it would have been :>hard for me to get in before you... :I was surprised, because it was in the massive back-from-holiday :download and I assumed it to be a few days old. :-- :private: Neil.Franklin@ccw.ch.remove http://www.ccw.ch/Neil. :Franklin/ office: franklin@arch.ethz.ch.remove http://caad.arch. :ethz.ch/~franklin/ WinCE car, crashing soon on a road near you -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her... Net-Tamer V 1.08X - Test Drive ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 06 Jul 1998 02:20:57 GMT Organization: . Lines: 29 Message-ID: <35a42445.4778565@news.innet.be> References: <6ne5vl$tmn$1@irk.zetnet.co.uk> <359cd123.1441678@news.innet.be> <6nm15t$tk$4@teabag.demon.co.uk> NNTP-Posting-Host: pool02b-194-7-226-222.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!news-lond.gip.net!news.gsl.net!gip.net!baron.netcom.net.uk!netcom.net.uk!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail cbh@REMOVE_THIS.teabag.demon.co.uk (Chris Hedley) told us > In article <359cd123.1441678@news.innet.be>, > lucvdv@null.net (Luc Van der Veken) writes: > > if(x1 && x2){z1=z/x1; z2=z/x2;} else {z1=1; z2=1;} > > Since I'm in a going-off-topic sort of a mood... I discovered ages > ago when I was searching for economy of keypresses (a Unix fundamental > and all that...) that lists of commands, ie { z1 = 1; z2 = 1; } could > be more lazily entered as z1 = 1, z2 = 1 (okay, I know this could also > be z1 = z2 = 1, but that's not the point here) Is using a comma as a > sort of continuation statement actually considered acceptable as far > as standards go, or was I using a weird (also pre-ANSI) compiler? Perfectly acceptible afaik. I might have used a comma if the semicolon wasn't in the home row under my little finger ;) But for readability, I probably would even have split it over multiple lines if it was in a real program. Putting them between {}, even when using a comma, also makes it more obvious that the two assignments belong toghether. It's personal preference maybe, but I normally use the a = b = c = ... form only in the first lines of a function, when (re-)initializing non-local things. For local variables I prefer the "int z=0" form. > Chris. ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 06 Jul 1998 02:20:58 GMT Organization: . Lines: 15 Message-ID: <35a62cdb.6975945@news.innet.be> References: <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> NNTP-Posting-Host: pool02b-194-7-226-222.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!news.internetMCI.com!newsfeed.internetmci.com!158.43.192.17!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) told us > People living in glass houses shouldn't throw stones... :-) After checking out my ASCII chart (like I should have done earlier) I can only admit you're right about SUB. I don't remember exactly where I got the EOF meaning - probably in some OS that started calling it that (DOS-yes, but it was before that- CP/M? I almost see myself sitting in front of a teletype when I think of CTRL/Z: could it have been a PDP-8 system?) I even remember "ASCII" charts that _listed_ it as EOF. CTRL/D is end of tape, however - end of transmission is CTRL/C. ###### Newsgroups: alt.folklore.computers From: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Subject: Re: slash / backslash Message-ID: <1998Jul6.075021.8903@lorelei.approve.se> Originator: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Sender: hoh@lorelei.approve.se.NO_JUNK_EMAIL (Goran Larsson) Organization: [1] + 5934 done /bin/rm -rf ~/ & X-No-Archive: yes X-Newsreader: trn 4.0-test66 (4 June 1998) References: <35a62cdb.6975945@news.innet.be> <1998Jul5.154041.617@lorelei.approve.se> <35a3bf56.23087156@news.innet.be> Lines: 32 X-Sender: s-64812@dialup238-4-4.swipnet.se X-Complaints-To: news-abuse@swip.net Date: Mon, 06 Jul 1998 08:01:20 GMT NNTP-Posting-Host: 130.244.238.52 NNTP-Posting-Date: Mon, 06 Jul 1998 10:01:20 MET DST Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newscore.univie.ac.at!uninett.no!news-feed.inet.tele.dk!bofh.vszbr.cz!masternews.telia.net!newsfeed1.swip.net!swipnet!nntpserver.swip.net!not-for-mail In article <35a3bf56.23087156@news.innet.be>, Luc Van der Veken wrote: > I don't have a listing at hand that has the full text names, but > I always remembered them (for >20 years now) as Better refresh that memory... :-) > 1 SOH - start of header > 2 STX - start of transmission > 3 ETX - end of transmission > 4 EOT - end of [paper?]tape << would actually also be valid for 1 SOH - Start Of Heading 2 STX - Start of TeXt 3 ETX - End of TeXt 4 EOT - End Of Transmission > This construction parodies the numerous obscure delimiter and > control characters left in ASCII from the days when it was > associated more with wire-service teletypes than computers > (e.g., FS, GS, RS, US, EM, SUB, ETX, and esp. EOT). This wire-service thing is the reason why there never was such things as "end of file" or end of tape" in ASCII. > [EOU] -- Goran Larsson hoh AT approve DOT se I was an atheist, http://home1 DOT swipnet DOT se/%7Ew-12153/ until I found out I was God. ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 06 Jul 1998 12:27:28 GMT Organization: . Lines: 72 Message-ID: <35a3bf56.23087156@news.innet.be> References: <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> <35a62cdb.6975945@news.innet.be> <1998Jul5.154041.617@lorelei.approve.se> NNTP-Posting-Host: pool02b-194-7-226-221.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.internetmci.com!194.72.7.126!btnet-peer!btnet!news-lond.gip.net!news.gsl.net!gip.net!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) told us > In article <35a62cdb.6975945@news.innet.be>, > Luc Van der Veken wrote: > > > I even remember "ASCII" charts that _listed_ it as EOF. > > Must have been a forgery then, or? I put ASCII between those quotes for a reason :) > > CTRL/D is end of tape, however - end of transmission is CTRL/C. > > From the same bogous "ASCII" chart? > > Control-C, 0x03, is ETX - End of text. > Control-D, 0x04, is EOT - End of transmission. > > There is no "End of file" or "End of tape" in ASCII. The closest > we get is control-Y, 0x19, EM - End of medium. I don't have a listing at hand that has the full text names, but I always remembered them (for >20 years now) as 1 SOH - start of header 2 STX - start of transmission 3 ETX - end of transmission 4 EOT - end of [paper?]tape << would actually also be valid for end of input... but it raises some confusion with EM over here. And by G** I can't remember what was that last series of punches on those papertapes when I used them (but *IIRC*, there were several identical ones at the end of each tape - better put enough weight on the iirc ;) Thinking a bit further, I remember encountering "text" instead of "transmission" too - but "transmission" must have been the first I ever saw, and I must have been using ROM brain cells at the time, because it's firmly burnt in. Wish I still had the PDP-8 and accompanying ASR-33 manuals from school. But the more I try to look it up, the more I see that I have to admit being wrong, so I better stop with these: The protocol workshop did agree that: .... If any break type characters (e.g. etx, sub, Break) are found they are to have their normal effect. :EOF: /E-O-F/ /n./ [abbreviation, `End Of File'] ... 2. [Unix] The keyboard character (usually control-D, the ASCII EOT (End Of Transmission) character) that is mapped by the terminal driver into an end-of-file condition. ... :EOU: /E-O-U/ /n./ The mnemonic of a mythical ASCII control character (End Of User) that would make an ASR-33 Teletype explode on receipt. This construction parodies the numerous obscure delimiter and control characters left in ASCII from the days when it was associated more with wire-service teletypes than computers (e.g., FS, GS, RS, US, EM, SUB, ETX, and esp. EOT). Maybe I'd better keep to rec.humor.funny and a.h.best-of-usenet - no danger of posting there :-) [EOU] ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Mon, 06 Jul 98 12:30:58 GMT Organization: UltraNet Communications, Inc. Lines: 26 Message-ID: <6nqjdr$phe$4@strato.ultra.net> References: <35a347b1.10040406@news.innet.be> <1998Jul4.202028.23384@lorelei.approve.se> <35a62cdb.6975945@news.innet.be> <1998Jul5.154041.617@lorelei.approve.se> NNTP-Posting-Host: d16.dial-14.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 6 Jul 1998 13:28:27 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!ubnnews.unisource.ch!news-nyc.telia.net!howland.erols.net!feed2.news.erols.com!erols!news.ultranet.com!d16 In article <1998Jul5.154041.617@lorelei.approve.se>, hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) wrote: >In article <35a62cdb.6975945@news.innet.be>, >Luc Van der Veken wrote: > >> I even remember "ASCII" charts that _listed_ it as EOF. > >Must have been a forgery then, or? > >> CTRL/D is end of tape, however - end of transmission is CTRL/C. > >From the same bogous "ASCII" chart? > >Control-C, 0x03, is ETX - End of text. >Control-D, 0x04, is EOT - End of transmission. > >There is no "End of file" or "End of tape" in ASCII. The closest >we get is control-Y, 0x19, EM - End of medium. > Do you think that the underscore character was always around? It used to be backarrow. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: jcmorris@mwunix.mitre.org (Joe Morris) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 6 Jul 1998 14:43:53 GMT Organization: The MITRE Corporation Lines: 16 Message-ID: <6nqnr9$osu@top.mitre.org> References: <359955E0.MD-0.198.definitely@nospam.fi><359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> <1807.488T427T5963300@sky.bus.com> <35a347b1.10040406@news.innet.be> <359ea0c6.20753501@news.bright.net> NNTP-Posting-Host: mwunix.mitre.org Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!newsfeed1.swip.net!swipnet!news.maxwell.syr.edu!newsfeed.internetmci.com!204.97.128.3!usenet.logical.net!news.tufts.edu!blanket.mitre.org!news.mitre.org!mwunix!jcmorris deke.spamblock@generous.net writes: > it was impossible to do a CR without LF in a linotype. ROFL! (Talk about HARDware...) >The most common output was probably an ASR-33. Who could afford a DECwriter? >They published an article by Don Lancaster on how to build a new-fangled "glass >tty" and Wayne Green complained that they kept getting more and more articles >submitted on converting Baudot devices to microcomputers. H'mmm ... and just where is ol' "Never Say Die" these days? Green seems to have disappeared from view; this is the first mention of him I've seen in a.f.c in a *long* time... Joe Morris ###### Newsgroups: alt.folklore.computers From: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Subject: Re: slash / backslash Message-ID: <1998Jul6.171354.13140@lorelei.approve.se> Originator: hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) Sender: hoh@lorelei.approve.se.NO_JUNK_EMAIL (Goran Larsson) Organization: [1] + 5934 done /bin/rm -rf ~/ & X-No-Archive: yes X-Newsreader: trn 4.0-test66 (4 June 1998) References: <35a62cdb.6975945@news.innet.be> <1998Jul5.154041.617@lorelei.approve.se> <6nqjdr$phe$4@strato.ultra.net> Lines: 22 X-Sender: s-64812@dialup87-11-8.swipnet.se X-Complaints-To: news-abuse@swip.net Date: Mon, 06 Jul 1998 17:19:05 GMT NNTP-Posting-Host: 130.244.87.168 NNTP-Posting-Date: Mon, 06 Jul 1998 19:19:05 MET DST Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed1.swip.net!swipnet!nntpserver.swip.net!not-for-mail In article <6nqjdr$phe$4@strato.ultra.net>, wrote: > In article <1998Jul5.154041.617@lorelei.approve.se>, > hoh@approve.se.NO_JUNK_EMAIL (Goran Larsson) wrote: > >Control-C, 0x03, is ETX - End of text. > >Control-D, 0x04, is EOT - End of transmission. > Do you think that the underscore character was always around? No. > It used to be backarrow. That is true. Now, what does that have to do with ETX and EOT? Are you suggesting that MS invented a new ASCII standard to so that ^Z is no longer CAN but is EOF instead, and made EOT end-of-tape just to make fun of Unix? -- Goran Larsson hoh AT approve DOT se I was an atheist, http://home1 DOT swipnet DOT se/%7Ew-12153/ until I found out I was God. ###### From: justin.frim@ablelink.org (Justin Frim) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash 1 Date: Mon, 06 Jul 1998 20:04:00 GMT Organization: Ability Online Support Network Lines: 101 Message-ID: <899756057@ablelink.org> NNTP-Posting-Host: ablelink.org NNTP-Posting-Date: 06 Jul 1998 17:06:03 EDT Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!ix.netcom.com!tor-nn1.netcom.ca!ntserv1!justin.frim DI>Luc Van der Veken (lucvdv@null.net) wrote -- DI>> After checking out my ASCII chart (like I should have done >> earlier) I can only admit you're right about SUB. I don't >> remember exactly where I got the EOF meaning - probably in some >> OS that started calling it that (DOS-yes, but it was before that- >> CP/M? I almost see myself sitting in front of a teletype when I >> think of CTRL/Z: could it have been a PDP-8 system?) >> >> I even remember "ASCII" charts that _listed_ it as EOF. >> >> CTRL/D is end of tape, however - end of transmission is CTRL/C. DI>03h (^C) is ETX or, more recently (per ISO), EX, End of TeXt. DI>04h (^D) is EOT or, more recently (per ISO), ET, End of Transmission. DI>I recall seeing End of Tape for 04h/^D somewhere; I'm assuming it's an old >definition, and I request substantiated correction if I'm wrong. DI>Dan Strychalski dski at cameonet, cameo, com, tw (no _x_) Ok, I've been following this thread for a while, and I thought maybe this small text file would help clear things up: Regular ASCII Chart. Column number is the high nibble hex number (bits 7, 6, 5, 4) and row number is the low nibble (bits 3, 2, 1, 0). Numbers in the chart are the decimal value. Columns 0 and 1 are control characters. Characters 09 (9), 0C (12), 1A (26) are listed with the correct ASCII mnemonic first. |0 |1 |2 |3 |4 |5 |6 |7 ---|------------|------------|-------|-------|-------|-------|-------|------- 0 |000 nul 016 dle 032 sp 048 0 064 @ 080 P 096 ` 112 p 1 |001 soh 017 dc1/xon 033 ! 049 1 065 A 081 Q 097 a 113 q 2 |002 stx 018 dc2 034 " 050 2 066 B 082 R 098 b 114 r 3 |003 etx 019 dc3/xoff 035 # 051 3 067 C 083 S 099 c 115 s 4 |004 eot 020 dc4 036 $ 052 4 068 D 084 T 100 d 116 t 5 |005 enq 021 nak 037 % 053 5 069 E 085 U 101 e 117 u 6 |006 ack 022 syn 038 & 054 6 070 F 086 V 102 f 118 v 7 |007 bel 023 etb 039 ' 055 7 071 G 087 W 103 g 119 w 8 |008 bs 024 can 040 ( 056 8 072 H 088 X 104 h 120 x 9 |009 ht/tab 025 em 041 ) 057 9 073 I 089 Y 105 i 121 y A |010 lf 026 sub/eof 042 * 058 : 074 J 090 Z 106 j 122 z B |011 vt 027 esc 043 + 059 ; 075 K 091 [ 107 k 123 { C |012 ff/np 028 fs 044 , 060 < 076 L 092 \ 108 l 124 | D |013 cr 029 gs 045 - 061 = 077 M 093 ] 109 m 125 } E |014 so 030 rs 046 . 062 > 078 N 094 ^ 110 n 126 ~ F |015 si 031 us 047 / 063 ? 079 O 095 _ 111 o 127 del Explanation of control character mnemonics and functions. NUL : null (valid character, although normally used for device padding) SOH : start of header (marks the beginning of header) STX : start of text (marks the end of header and beginning of data block) ETX : end of text (marks the end of the data block) EOT : end of transmission (usually sent where SOH would be placed when ending the transmission) ENQ : enquire (status / identification request) ACK : acknowledge (sent by reciever if data block is error free) BEL : bell (makes a noise) BS : backspace (moves the active position (cursor) back 1 column on the current line. If the active position is at the first column, the command is ignored) HT/TAB : horizontal tab (moves the active position to next horzontal tab stop on the current line) LF : line feed (moves the active position to next line, current column) VT : vertical tab (moves the active position down a predetermined number of lines, on the current column) FF/NP : form feed / new page (moves the active position to a predefined line of the next page (usually the first line). Sometimes it also moves the active position to the first column. On video terminals this usually clears the screen) CR : carriage return (moves the active position to the first column of the current line) SO : shift out (jumps to alternate (or next) character set) SI : shift in (returns to default (or previous) character set) DLE : data link escape (indicates the next predefined number of characters are control code sequence) DC1/XON : device control 1 / transmit on DC2 : device control 2 DC3/XOFF: device control 3 / transmit off DC4 : device control 4 (no defined ASCII standard. Can be used for any form of controlling the reciever. DC1/XON has become a defacto standard on many systems to instruct the transmitter to resume sending data, and DC3/XOFF to stop sending data / pause the data flow) NAK : negative acknowledge (sent by reciever if data block has an error) SYN : synchronize (synchronize reciever and transmitter while there is no data flow) ETB : end of transmission block (can be used in place of ETX, usually used if the physical size of the record was larger than size of the data) CAN : cancel (ignore preceeding characters or terminate current operation) EM : end of medium (indicates the preceeding character was the last (Continued to next message) * 1st 2.00 ~ Ability OnLine - Toronto Canada - (416) 650-5411 ###### From: justin.frim@ablelink.org (Justin Frim) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash 2 Date: Mon, 06 Jul 1998 20:04:00 GMT Organization: Ability Online Support Network Lines: 23 Message-ID: <899756058@ablelink.org> NNTP-Posting-Host: ablelink.org NNTP-Posting-Date: 06 Jul 1998 17:06:09 EDT Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!ix.netcom.com!tor-nn1.netcom.ca!ntserv1!justin.frim (Continued from previous message) useable character currently on the medium) SUB/EOF : substitute / end of file (replaced or insterted before a character that is determined to be an error. Many systems also use this to indicate the end of a file) ESC : escape (indicates the preceeding characters are an escape sequence, usually terminated with a predifined character in the sequence) FS : field seperator GS : group seperator RS : record seperator US : unit seperator (defined as hierarchical data seperators. FS is most inclusive, then GS, RS, and US as least inclusive) SP : space (moves active position to next column) DEL : delete (deletes previous character. On some systems it prints a filled in box, some video terminals clear the previous character from the screen. Sometimes it is used for device padding) EOL/CRLF: not a defined ASCII character. Refers to the character or sequence of characters required to move the active position to the first column of the next line. On DOS and CP/M systems, it is written as CRLF meaning characters 0D (13) and 0A (10) are sent. * 1st 2.00 ~ Ability OnLine - Toronto Canada - (416) 650-5411 ###### Path: ccw.ch!usenet From: Neil Franklin Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 06 Jul 1998 21:40:39 +0200 Organization: My own Private Self Lines: 61 Message-ID: References: <6noqpn$drt$1@irk.zetnet.co.uk> X-Newsreader: Gnus v5.3/Emacs 19.34 lisard@zetnet.co.uk writes: > :> Forth-79 defined the value returned by 0< as 0 or 1. All the > :>subsequent Forths had it as -1, but there's always a catch. :> Of > :>course if it matters you can define Just had idea too look it up in Brodie, Thinking Forth, page 242 Traditional: : S>D (n -- d) \ sign extend s to d DUP 0< IF -1 ELSE 0 THEN ; Calculated Results: : S>D (n -- d) \ sign extend s to d DUP 0< ; Followed by the remark: In pre-1983 systems use DUP 0< NEGATE NEGATE is 0 OVER - so no conditionals in there So you are right. That was only introduced as standard in 83. > :I was thinking of cmFORTH (the one Moore wrote for the NC4000 chip). > :That would be based on Forth-83. > > That would be based on nothing else on the planet, you mean! Appart from Charles Moores brain and previous work (Poly-Forth?). Only the inventor of the language. So not important... :-). > It's a beautiful version of Forth, provided you can happily think of such > things as vocabularies as optional extras. Never used them in the other Forths either! > Played with Pygmy? Never heard of it, so obviously not. > :But I think the Forth-79 based stuff on the 6502 (C64) also used > :all-1s, but memory is fading on this one. > > Hmm. I'll just check this. I have MVP-FORTH ready and waiting to be > sparked up... Mountain View Press. I think one of the 64s I used had that, but I can't remember what it did in this case. -- private: Neil.Franklin@ccw.ch.remove http://www.ccw.ch/Neil.Franklin/ office: franklin@arch.ethz.ch.remove http://caad.arch.ethz.ch/~franklin/ WinCE car, crashing soon on a road near you ###### From: butting@rose.cs.waikato.ac.nz (Bryce Utting) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 7 Jul 1998 03:49:16 GMT Organization: Defenestrative Solutions Lines: 41 Message-ID: References: <6ne5vl$tmn$1@irk.zetnet.co.uk> <359cd123.1441678@news.innet.be> <6nm15t$tk$4@teabag.demon.co.uk> NNTP-Posting-Host: newstest.waikato.ac.nz X-Mailer: slrn (0.9.4.3 UNIX) Cache-Post-Path: clint.waikato.ac.nz!unknown@rose.cs.waikato.ac.nz X-Cache: nntpcache 2.3.2.1 (see http://www.nntpcache.org/) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!newsfeed1.swip.net!swipnet!masternews.telia.net!news-feed.inet.tele.dk!bofh.vszbr.cz!intgwlon.nntp.telstra.net!news.telstra.net.nz!news.akl.netlink.net.nz!waikato!news Chris Hedley (cbh@REMOVE_THIS.teabag.demon.co.uk) wrote: >Is using a comma as a >sort of continuation statement actually considered acceptable as far >as standards go, or was I using a weird (also pre-ANSI) compiler? What I'm listening to right now seems oddly appropriate ("... even as we speak/the dirty creature springs a nasty surprise"[1]), so there's no way I'm gonna not join in ;) The comma operator's perfectly valid for separating -expressions-, and is described in K&R 2nd ed p. 62, in connection with for statements. Using it between what you might intend the compiler to process as -statements-, OTOH, might lead to an accidental entry for the obfuscated C competition. The expressions will be joined into a single statement (no surprise), returning the value of the right-most expression. x = 1, 2; y = (1, 2); printf("%d, %d\n", x, y); returns, as the experienced programmer knows, "1, 2". The experienced programmer also knows that snipping code carefully out of for statements (the usual home of comma operators), and then placing it elsewhere, is a delightfully enjoyable way of livening up the workplace ;) hth, butting [1] Split Enz, Dirty Creature, from Time and Tide, 1982. Recommended without hesitation. -- Bryce Utting http://www.cs.waikato.ac.nz/~butting the cross before me, the world behind me no turning back ###### From: nospam@zk3.dec.com (Eric Werme - replace nospam with werme) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 7 Jul 1998 14:38:37 GMT Organization: Digital Equipment Corporation Lines: 21 Message-ID: <6ntbtd$p17$1@nntpd.lkg.dec.com> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <359C5B33.1F36@bell-labs.com> Reply-To: (Replace nobody with werme) nobody@zk3.dec.com NNTP-Posting-Host: alingo.zk3.dec.com X-Newsreader: NN version 6.5.0 CURRENT #60 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.wli.net!su-news-hub1.bbnplanet.com!news.bbnplanet.com!nntp2.crl.com!data.pa.vix.com!news1.digital.com!pa.dec.com!nntpd.lkg.dec.com!not-for-mail Dennis Ritchie writes: >This was about the same time that ASCII was being formulated >(late 60's). The 012(8) control code was given two permissible >interpretations: one was "line feed" (move paper up), the >other "new line." My memory is really, really fuzzy on this point, but I recall reading an ASCII draft? spec in the early 70s that assigned 0x1a (^Z) the CRLF/NL function and preserved CR and LF for their traditional roles. Unfurtunately, I can't find supporting data on the web. Maybe it was the late 70s, as I remember thinking it was too late for Unix to make the switch, and I didn't know much about Unix until the mid 70s. It is remarkable that something that has caused so much hassle has endured for so long. -- <> Eric (Ric) Werme <> The above is unlikely to contain <> <> ROT-13 addresses: <> official claims or policies of <> <> <> Compaq Computer Corp. <> <> <> http://www.cyberportal.net/werme <> ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 7 Jul 1998 18:34:55 GMT Message-ID: <6ntpof$jkv$1@irk.zetnet.co.uk> References: <6noqpn$drt$1@irk.zetnet.co.uk> NNTP-Posting-Host: man-209.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 899836495 20127 194.247.43.11 (7 Jul 1998 18:34:55 GMT) NNTP-Posting-Date: 7 Jul 1998 18:34:55 GMT X-Everything: Net-Tamer V 1.08X Lines: 69 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail *shakes head* How did this happen? (15 points to anyone who can spot the reference) On 1998-07-05 lisard@zetnet.co.uk said: :Newsgroups: alt.folklore.computers :On 1998-07-02 Neil.Franklin@ccw.ch.remove said: ::> Yes, but & doesn't short circuit, which was the point under ::> discussion... once... somewhere... *looks around frantically* ::That comes from joining an thread after its beginning has expired ::from my news feed :-). :tee hee :> Welcome back from holiday (says the guy who didn't even :notice your absence... oops). ::> :And of course ::> :a=flag&integer ::> :replaces ::> :if flag then a=integer else a=0 endif ::> :Messy but consise, fast and compact, a.k.a. Forth. ::> Forth-79 defined the value returned by 0< as 0 or 1. All the ::>subsequent Forths had it as -1, but there's always a catch. :> Of ::>course if it matters you can define ::I was thinking of cmFORTH (the one Moore wrote for the NC4000 :chip). :That would be based on Forth-83. :That would be based on nothing else on the planet, you mean! It's a :beautiful version of Forth, provided you can happily think of such :things as vocabularies as optional extras. Played with Pygmy? ::But I think the Forth-79 based stuff on the 6502 (C64) also used ::all-1s, but memory is fading on this one. :Hmm. I'll just check this. I have MVP-FORTH ready and waiting to be :sparked up... ::> but what is even more fun is to use that approach in defining ::>low-level Forth words like 0<, MAX or 0BRANCH... ;> I believe ::>that it's possible to write an entire Forth kernel without using ::>a single conditional branch, which should theoretically have some ::>advantages on a heavily pipelined system. ::Should be possible. Replacing conditional jumps with a few masking ::instructions is possible. Actuall the ARM simply allows any ::instruction to be conditional so you simply arange for the trua and ::false cases to appear inline with the appropriate conditionals. ::But on the NC4000 (not pipelined at all, not even memory access ::interleaved with instruction decode) 0< and 0BRANCH (simply called ::IF) are single word opcodes (no implementing there) and MIN/MAX ::simply uses: ::: MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; ::My attempt at non-conditional would be: ::: MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; ::But I think that would require quite an large penalty on ::conditionals for this version to be faster. ::OK, enough of scaring people :-). ::> :I am surprised that lisard missed that one :-). ::> Well, since I've only just discovered this sequence of posts - I ::>only get to read after 7.30pm, you know! - it would have been ::>hard for me to get in before you... ::I was surprised, because it was in the massive back-from-holiday ::download and I assumed it to be a few days old. ::-- ::private: Neil.Franklin@ccw.ch.remove http://www.ccw.ch/Neil. ::Franklin/ office: franklin@arch.ethz.ch.remove http://caad.arch. ::ethz.ch/~franklin/ WinCE car, crashing soon on a road near you :-- Communa (together) we remember... we'll see you :falling you know soft spoken changes nothing to sing :within her... :Net-Tamer V 1.08X - Test Drive -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her... Net-Tamer V 1.08X - Test Drive ###### Newsgroups: alt.folklore.computers From: dpbsmith@world.std.com (Daniel P. B. Smith) Subject: Re: slash / backslash Message-ID: Organization: The World Public Access UNIX, Brookline, MA References: <359C5B33.1F36@bell-labs.com> <6ntbtd$p17$1@nntpd.lkg.dec.com> Date: Wed, 8 Jul 1998 10:25:11 GMT Lines: 32 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!newsfeed.nyu.edu!wesley.videotron.net!Pollux.Teleglobe.net!uunet!in3.uu.net!world!dpbsmith In article <6ntbtd$p17$1@nntpd.lkg.dec.com>, Eric Werme - replace nospam with werme <> wrote: >Dennis Ritchie writes: > >>This was about the same time that ASCII was being formulated >>(late 60's). The 012(8) control code was given two permissible >>interpretations: one was "line feed" (move paper up), the >>other "new line." > >My memory is really, really fuzzy on this point, but I recall reading >an ASCII draft? spec in the early 70s that assigned 0x1a (^Z) the CRLF/NL >function and preserved CR and LF for their traditional roles. >Unfurtunately, I can't find supporting data on the web. Maybe it was >the late 70s, as I remember thinking it was too late for Unix to make >the switch, and I didn't know much about Unix until the mid 70s. > >It is remarkable that something that has caused so much hassle has endured >for so long. According to _my_ fuzzy memory, the ASCII standard defines control-Y (0x19), NOT control-Z, as meaning physical end of media (e.g. paper tape). Whether this is logically the same as end-of-file, I couldn't say. The fact that some DEC operating systems (RT-11 and OS/8, for sure), CP/M, and early MS-DOS all use control-Z for this function is, to me, a strong piece of evidence that MS-DOS and CP/M borrowed many details from DEC. The standard said that CTRL-Z was to be used as a placeholder to mark or replace characters that were known to have been lost or garbled in transmission. -- Daniel P. B. Smith dpbsmith@world.std.com ###### Newsgroups: alt.folklore.computers From: dpbsmith@world.std.com (Daniel P. B. Smith) Subject: Re: slash / backslash Message-ID: Organization: The World Public Access UNIX, Brookline, MA References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> Date: Wed, 8 Jul 1998 18:30:43 GMT Lines: 52 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!newsfeed.ecrc.net!newsfeed.nyu.edu!wesley.videotron.net!Pollux.Teleglobe.net!uunet!in3.uu.net!world!dpbsmith In article <359ADF58.3DC857FC@stoneweb.com>, Carl R. Friend wrote: >Robert Billing wrote: >> >> Well, [1's complement logic] means that any number can be negated >> (you don't suffer the -32768 problem), and you have a spare bit >> pattern (-0) which IIRC could be used as a NAN to indicate error or >> uninitialised memory. > > All well and good, but 1's complement logic tends to misbehave >(logically) when one increments from -1 to 0 unless the machine >takes that into account (possibly taking a cycle or so?). It's silly to reprise an old religious war, but: incrementing from -1 to 0 doesn't misbehave. It just produces a -0 result. -0 is just as zero as zero as +0 is. Adding -0 to a number does just the same thing as adding +0 to it: nothing. It does mean that instructions that TEST for zero need to recognize both zeroes, and it does mean that instructions that test for equality need a special case for comparing +0 to -0. The PDP-1 did have some special case logic in it to automatically transform -0 to +0 when it occurred in certain contexts; apparently the 5 microsecond memory cycle of time allowed plenty of time to do this. Broadly speaking, one's complement logic versus two's complement logic had balances of pros and cons--what a surprise. In coding algorithms that mix bitwise hacking and arithmetic, the fact that logical bitwise negation is the same as arithmetic negation has some benefits. The fact that the magnitude range of positive and negative number is the same has MANY benefits. How many two's-complement programs have subtle bugs that show up when they see the value -32768 for the first time? When is the last time you, personally, tested for overflow after negating an integer? What? You say you never have, not even once? On the other hand, having two different representations for zero is a pain. You're never quite sure what the compiler, etc. is going to give you is going to put into memory as a result of evaluating the string "-0" and it's cold comfort to say that in a properly written program it shouldn't matter. IIRC the big factor leading to the prevalence of two's complement arithmetic was that it made it much easier to write software that does multiple-precision arithmetic, e.g. if your processor is only one byte wide and you want to write a set of routines to do 64-bit integer arithmetic. So, in fact, in these days of processors with wide registers and built-in-floating-point, the question might be worth re-opening. -- Daniel P. B. Smith dpbsmith@world.std.com ###### Newsgroups: alt.folklore.computers From: dpbsmith@world.std.com (Daniel P. B. Smith) Subject: Re: slash / backslash Message-ID: Organization: The World Public Access UNIX, Brookline, MA References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Date: Wed, 8 Jul 1998 18:37:06 GMT Lines: 25 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.wli.net!uunet!in2.uu.net!world!dpbsmith In article <359b0667.176195828@news.bright.net>, wrote: >If you do a line feed on a TTY, the hardware automatically moves to the left. >That's obvious. Why would anyone waste paper? It may be "obvious," but on our genuine Teletype brand Teletypes made by the Teletype corporation, it wasn't what happened. A line feed character made the platen advance, moving the paper up one line. The carriage did NOT return. And a carriage return returned the carriage, without advancing the platen. CR LF and LF CR performed two visibly and audibly different actions with the same combined results. Why would anyone do it that way? I'm not sure, but do keep in mind that these machine had no microprocessors in them, no firmware, no integrated circuits, and damn little discrete logic. The serial bitstreams were decoded by a little brush-and-commutator jiggy, and the way 00100001 ended up causing an A to get printed was entirely electromechanical... Incidentally, there were no flow control problems because carriage return, line feed, etc. were all mechanically complete within the same 100 milliseconds it took for ANY character. -- Daniel P. B. Smith dpbsmith@world.std.com ###### From: skb@xmission.removethis.com (Scott Brown) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 08 Jul 1998 19:51:15 GMT Organization: XMission (801 539 0852) Lines: 41 Message-ID: <35a3bd4d.672142148@news.xmission.com> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> NNTP-Posting-Host: slc387h.modem.xmission.com X-Trace: news.xmission.com 899927277 5794 166.70.2.133 (8 Jul 1998 19:47:57 GMT) X-Complaints-To: abuse@xmission.com NNTP-Posting-Date: 8 Jul 1998 19:47:57 GMT X-Newsreader: Forte Free Agent 1.1/16.230 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.direct.ca!xmission!not-for-mail On Wed, 8 Jul 1998 18:30:43 GMT, dpbsmith@world.std.com (Daniel P. B. Smith) wrote: >In article <359ADF58.3DC857FC@stoneweb.com>, >Carl R. Friend wrote: >>Robert Billing wrote: >>> >>> Well, [1's complement logic] means that any number can be negated >>> (you don't suffer the -32768 problem), and you have a spare bit >>> pattern (-0) which IIRC could be used as a NAN to indicate error or >>> uninitialised memory. >> >> All well and good, but 1's complement logic tends to misbehave >>(logically) when one increments from -1 to 0 unless the machine >>takes that into account (possibly taking a cycle or so?). > >It's silly to reprise an old religious war, but: incrementing from -1 to >0 doesn't misbehave. It just produces a -0 result. -0 is just as zero >as zero as +0 is. Adding -0 to a number does just the same thing as >adding +0 to it: nothing. But incrementing -0 produces +0, right? Having never worked with one's-complement numbers, that would be *too* weird for me. >IIRC the big factor leading to the prevalence of two's complement >arithmetic was that it made it much easier to write software that >does multiple-precision arithmetic, e.g. if your processor is only >one byte wide and you want to write a set of routines to do 64-bit integer >arithmetic. So, in fact, in these days of processors with wide registers >and built-in-floating-point, the question might be worth re-opening. So if your processor is 64 bits wide and you need to run 2048-bit integer computations with absolute precision...? No matter how many bits your base architecture provides, someone will always need more. Two's complement is such an ingrained standard by now that it would be more trouble than it's worth to change it. Just think of how many people are storing legitimate values of -32768 in 16-bit fields... -Scott ###### From: ard@p850ug1.demon.co.uk (Tony Duell) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: 8 Jul 1998 21:29:34 +0100 Organization: P850 User Group Message-ID: <6o0krf$tp@p850ug1.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> NNTP-Posting-Host: p850ug1.demon.co.uk X-NNTP-Posting-Host: p850ug1.demon.co.uk:158.152.97.199 X-Trace: news.demon.co.uk 899940836 nnrp-04:1997 NO-IDENT p850ug1.demon.co.uk:158.152.97.199 X-Complaints-To: abuse@demon.net X-Newsreader: TIN [version 1.2 PL2] Lines: 17 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!fu-berlin.de!uni-erlangen.de!newsfeed.nacamar.de!dispose.news.demon.net!demon!news.demon.co.uk!demon!p850ug1.demon.co.uk!not-for-mail Daniel P. B. Smith (dpbsmith@world.std.com) wrote: : Why would anyone do it that way? I'm not sure, but do keep in mind : that these machine had no microprocessors in them, no firmware, no : integrated circuits, and damn little discrete logic. The serial : bitstreams were decoded by a little brush-and-commutator jiggy, and A minor correction. The bitstream was produced by a spinning carbon brush on the 'distributor plate', but it was decoded by having a solenoid to translate the incoming bits into movement, and a camshaft to sample that solenoid's position at the appropriate times and set 8 levers appropriately. All the logic you'd expect to find in a UART is there - it's just mechanical and not electronic. -tony ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Wed, 08 Jul 1998 21:46:09 +0100 Organization: Tanglewood Message-ID: <35A3DA91.5E16F912@tnglwood.demon.co.uk> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899968834 nnrp-04:8084 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 16 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!howland.erols.net!woodstock.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail Scott Brown wrote: > But incrementing -0 produces +0, right? Having never worked with > one's-complement numbers, that would be *too* weird for me. Wrong, it produces 1. There are simply two bit patterns that represent 0, an arithmetic operation with a result of 0 can produce either according to the operation, phase of the moon, or state of mind of the resident mongoose. Often it is convenient to pinch one of these values to use as a NAN. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: Dennis Ritchie Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 01:33:46 +0100 Organization: Bell Labs, Lucent Technologies Lines: 32 Message-ID: <35A40FEA.330B@bell-labs.com> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> Reply-To: dmr@bell-labs.com NNTP-Posting-Host: cebu.cs.bell-labs.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.01 (Win95; U) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!wn4feed!worldnet.att.net!207.24.196.41!nntphub.cb.lucent.com!news.research.bell-labs.com!news Daniel P. B. Smith wrote: > but on our genuine Teletype brand Teletypes made by > the Teletype corporation, [the NL function] wasn't what happened. > A line feed character made the platen advance, moving the paper > up one line. The carriage did NOT return. And a carriage > return returned the carriage, without advancing the platen. > CR LF and LF CR performed two visibly and audibly different actions > with the same combined results. This was indeed the way with all the classical models (like 28, 33, 35). But I assure you that the genuine Teletype model 37s that occupied our lab (and that I used for several years in the basement of my house) could be and were mechanically optioned to perform NL on receipt of the 012(8) code. They did, by the way, need attention to delay. Doing CR-LF was almost, but not quite, enough to avoid mistyping at 15 cps. About a page of code in 5th edition Unix (1975) was devoted to computing the correct real-time--not fill-character--delay for NL, CR, LF, TAB, etc. Doing it by waiting, instead of sending NUL or other fill, made the sound (and speed) of a correctly adjusted TTY37 really sweet. (All of this was also in Multics too). Of course, being mechanical, Teletypes weren't always adjusted. Get the dashpot at the left wrong, and the typebox either slowed too much (first character printed while typebox still moving) or too little (typebox bounced on stop, printed in wrong place, made horrible noise). All in all, bits are better, but the history is fun too. Dennis ###### From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 05:35:15 -0400 Organization: as little as possible! Lines: 28 Message-ID: <35A48ED3.24EDE4CE@stoneweb.com> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> NNTP-Posting-Host: zephyr.ultranet.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@ultra.net X-Ultra-Time: 9 Jul 1998 09:35:17 GMT X-Mailer: Mozilla 2.0 (X11; I; Linux 2.0.29 i586) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newspeer.monmouth.com!news.ultranet.com!not-for-mail Daniel P. B. Smith wrote: > > Incidentally, there were no flow control problems because carriage > return, line feed, etc. were all mechanically complete within the > same 100 milliseconds it took for ANY character. I have just one minor not to pick there. The carriage return usually took more than one character time to complete as the print cylinder had to return back to the left end. That's why the LF pretty much always _followed_ the CR; the machine could process characters whilst the head was in motion and if one of those was printable it would do its duty and print it (and smear it, too). The LF was a "fill" character which had the nice benefit of also advancing the paper. On a _properly adjusted_ TTY set, the LF was just enough. But, if you mis-set that %#$! dashpot at the left margin you'd get funny stuff (or a real loud "clunk" when the carriage slammed home). -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum | ICBM: N42:22 W71:47 | |________________________________________________|_____________________| ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 08:57:29 +0100 Organization: Tanglewood Message-ID: <35A477E9.1C9F5655@tnglwood.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6o0krf$tp@p850ug1.demon.co.uk> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 899972181 nnrp-08:6319 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 14 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.internetmci.com!194.72.7.126!btnet-peer!btnet!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail Tony Duell wrote: > All the logic you'd expect to find in a UART is there - it's just > mechanical and not electronic. ...in the same way that field programmable sum of products logic was implemented in big lumps of iron to control railway signal boxes in the last century. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: JMarshall@enterprise.net (John Marshall) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 10:31:05 GMT Organization: Enterprise PLC - Internet Services Lines: 24 Message-ID: <35a497b5.3477474@news.enterprise.net> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> NNTP-Posting-Host: ppp487.enterprise.net X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!newsfeed.uk.ibm.net!ibm.net!SnUK10!baron.netcom.net.uk!netcom.net.uk!knife.netcom.net.uk!netcom.net.uk!news.enterprise.net!not-for-mail Robert Billing wrote: > Scott Brown wrote: >> But incrementing -0 produces +0, right? Having never worked with >> one's-complement numbers, that would be *too* weird for me. > > Wrong, it produces 1. Um, my memory's pretty shot here, but I'm having a very hard time seeing how increment can operate on two bit patterns (-0, +0) and produce the same bit pattern (+1) for both of them. Unless the circuitry is way more complicated than two's-complement increment circuitry. Which bit's wrong? +0 = 00000000 incr: 00000001 = +1 -0 = 11111111 incr: 00000000 = +0!!! > [...] or state of mind of the resident mongoose. > Often it is convenient to pinch one of these values to use as a NAN. What, much like pinching -32768 to use as a NAN in two's-complement, thus sidestepping the main disadvantage of two's mentioned in this thread? :-) John "You mean you need a mongoose in the circuitry too?!" ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 98 11:05:53 GMT Organization: UltraNet Communications, Inc. Lines: 21 Message-ID: <6o2bj5$pdq$3@strato.ultra.net> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> NNTP-Posting-Host: d16.dial-17.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 9 Jul 1998 12:03:49 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newsfeed.xcom.net!news.ultranet.com!d16 In article <35A3DA91.5E16F912@tnglwood.demon.co.uk>, Robert Billing wrote: >Scott Brown wrote: > >> But incrementing -0 produces +0, right? Having never worked with >> one's-complement numbers, that would be *too* weird for me. > > Wrong, it produces 1. There are simply two bit patterns that represent >0, an arithmetic operation with a result of 0 can produce either >according to the operation, phase of the moon, or state of mind of the >resident mongoose. Often it is convenient to pinch one of these values >to use as a NAN. > I was never taught about the state of mind of the resident mongoose. Is this operating system dependent? :-) /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: jmfbahciv@aol.com Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 98 11:08:29 GMT Organization: UltraNet Communications, Inc. Lines: 18 Message-ID: <6o2bo0$pdq$4@strato.ultra.net> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> NNTP-Posting-Host: d16.dial-17.mbo.ma.ultra.net X-Complaints-To: abuse@ultra.net X-Ultra-Time: 9 Jul 1998 12:06:24 GMT X-Newsreader: News Xpress Version 1.0 Beta #4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!news.ultranet.com!d16 In article , dpbsmith@world.std.com (Daniel P. B. Smith) wrote: >IIRC the big factor leading to the prevalence of two's complement >arithmetic was that it made it much easier to write software that >does multiple-precision arithmetic, e.g. if your processor is only >one byte wide and you want to write a set of routines to do 64-bit integer >arithmetic. So, in fact, in these days of processors with wide registers >and built-in-floating-point, the question might be worth re-opening. > It certainly deserves discussion. Most of those design decisions made back then had rational thinking behind them. /BAH Sigh! - Subtract a hundred and four for e-mail. ###### From: "George R. Gonzalez" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 9 Jul 1998 12:48:16 -0500 Organization: SkyPoint Communications, Inc. Lines: 25 Message-ID: <6o31gb$6qu$1@shadow.skypoint.net> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> <35a497b5.3477474@news.enterprise.net> NNTP-Posting-Host: dial067.skypoint.net Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Newsreader: Microsoft Outlook Express 4.72.2106.4 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newspeer.monmouth.com!newsfeed.concentric.net!news.winternet.com!skypoint.com!not-for-mail John Marshall wrote in message <35a497b5.3477474@news.enterprise.net>... >Robert Billing wrote: >> Scott Brown wrote: >>> But incrementing -0 produces +0, right? Having never worked with >>> one's-complement numbers, that would be *too* weird for me. >> >> Wrong, it produces 1. > >Um, my memory's pretty shot here, but I'm having a very hard time seeing >how increment can operate on two bit patterns (-0, +0) and produce the >same bit pattern (+1) for both of them. Unless the circuitry is way >more complicated than two's-complement increment circuitry. Not too much more complicated. It just does an end-around carry 111111111 + 0000001 = 0000000 + end-around carry => 0000001 One nice thing about 1-s complement-- there are the same number of positive and negative numbers. Two's complement gives you one more negative number. ###### From: "George R. Gonzalez" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 9 Jul 1998 12:53:02 -0500 Organization: SkyPoint Communications, Inc. Lines: 21 Message-ID: <6o31p9$6tk$1@shadow.skypoint.net> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <6o0krf$tp@p850ug1.demon.co.uk> <35A477E9.1C9F5655@tnglwood.demon.co.uk> NNTP-Posting-Host: dial067.skypoint.net Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Newsreader: Microsoft Outlook Express 4.72.2106.4 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!newspeer.monmouth.com!newsfeed.concentric.net!news.winternet.com!skypoint.com!not-for-mail Robert Billing wrote in message <35A477E9.1C9F5655@tnglwood.demon.co.uk>... >Tony Duell wrote: > >> All the logic you'd expect to find in a UART is there - it's just >> mechanical and not electronic. > > ...in the same way that field programmable sum of products logic was >implemented in big lumps of iron to control railway signal boxes in the >last century. ... or in an old (1880's) pump organ, there are scads of AND & OR gates, and a ROM, all implemented in wood. For example, when you pull out the "Concerto" knob, the knob activates certain number of levers to open passages inside the organ. Each knob affects a different subset of passages. There are even some "wired-OR" gates, implemented with thin leather strips. ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 16:05:26 +0100 Organization: Tanglewood Message-ID: <35A4DC36.7429139B@tnglwood.demon.co.uk> References: <359955E0.MD-0.198.definitely@nospam.fi> <359b0667.176195828@news.bright.net> <35A48ED3.24EDE4CE@stoneweb.com> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 900055541 nnrp-10:25168 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 14 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-fra.maz.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail Carl R. Friend wrote: > The carriage return usually took more than one character time to > complete as the print cylinder had to return back to the left end. OTOH the DECWriter I had a whacking great solonoid to step the paper advance, and at 300 baud if you sent a continuous stream of LFs it blew a raspberry and broke, so LFs had to be filled with nulls. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: Robert Billing Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Thu, 09 Jul 1998 16:08:25 +0100 Organization: Tanglewood Message-ID: <35A4DCE9.3749B463@tnglwood.demon.co.uk> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> <35a497b5.3477474@news.enterprise.net> NNTP-Posting-Host: localhost.demon.co.uk X-NNTP-Posting-Host: tnglwood.demon.co.uk:158.152.132.30 X-Trace: news.demon.co.uk 900055550 nnrp-10:25168 NO-IDENT tnglwood.demon.co.uk:158.152.132.30 X-Complaints-To: abuse@demon.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 3.04 (X11; I; Linux 2.0.31 i586) Lines: 22 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!rill.news.pipex.net!pipex!dispose.news.demon.net!demon!news.demon.co.uk!demon!tnglwood.demon.co.uk!not-for-mail John Marshall wrote: > Which bit's wrong? > > +0 = 00000000 incr: 00000001 = +1 Right > -0 = 11111111 incr: 00000000 = +0!!! Wrong -0 = 11111111 incr: 00000001 = +1 Yes, that's what it does. The circuitry is not much more complicated, but it does work in a different way. -- I am Robert Billing, Christian, inventor, traveller, cook and animal lover, I live near 0:46W 51:22N. http://www.tnglwood.demon.co.uk/ "Bother," said Pooh, "Eeyore, ready two photon torpedoes and lock phasers on the Heffalump, Piglet, meet me in transporter room three" ###### From: lucvdv@null.net (Luc Van der Veken) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 10 Jul 1998 08:31:15 GMT Organization: . Message-ID: <35a6d057.4998412@news.innet.be> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> <35a497b5.3477474@news.enterprise.net> NNTP-Posting-Host: pool02b-194-7-226-205.uunet.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Newsreader: Forte Agent 1.5/32.451 X-No-Archive: yes Lines: 21 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!logbridge.uoregon.edu!news-peer.gip.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!krypton.inbe.net!INbe.net!not-for-mail Also sprach JMarshall@enterprise.net (John Marshall) on Thu, 09 Jul 1998 10:31:05 GMT to alt.folklore.computers: > Um, my memory's pretty shot here, but I'm having a very hard time seeing > how increment can operate on two bit patterns (-0, +0) and produce the > same bit pattern (+1) for both of them. Unless the circuitry is way > more complicated than two's-complement increment circuitry. So we arrive at the reason why 2's complement was introduced. It simplifies the circuitry of the ALU (not just for incrementing: it makes addition of signed numbers possible with the same hardware as for unsigned ones). The minor cost of making negation slightly more complex (complement + increment, both already present in the ALU) was outweighed by the save in cost for addition and subtraction. That's the way I learned it at school, but you can also look at it the other way around: it makes signed arithmitic possible on hardware that was developed for unsigned only. ###### From: JMarshall@enterprise.net (John Marshall) Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Fri, 10 Jul 1998 16:18:56 GMT Organization: Enterprise PLC - Internet Services Lines: 6 Message-ID: <35a5f765.2418614@news.enterprise.net> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> <35a497b5.3477474@news.enterprise.net> <6o31gb$6qu$1@shadow.skypoint.net> NNTP-Posting-Host: max01-025.enterprise.net X-Newsreader: Forte Free Agent 1.11/32.235 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newspump.monmouth.com!newspeer.monmouth.com!btnet-peer!btnet!baron.netcom.net.uk!netcom.net.uk!knife.netcom.net.uk!netcom.net.uk!news.enterprise.net!not-for-mail "George R. Gonzalez" wrote: > Not too much more complicated. It just does an end-around carry > > 111111111 + 0000001 = 0000000 + end-around carry => 0000001 Hmmm.. "end-around carry". My mongoose says "that's kinda cute". ###### Newsgroups: alt.folklore.computers From: alderson@netcom.netcom.com (Richard M. Alderson III) Subject: Re: slash / backslash In-Reply-To: dpbsmith@world.std.com's message of Wed, 8 Jul 1998 10:25:11 GMT Message-ID: Sender: alderson@netcom.netcom.com Reply-To: alderson@netcom.com Organization: NETCOM On-line services References: <359C5B33.1F36@bell-labs.com> <6ntbtd$p17$1@nntpd.lkg.dec.com> Date: Fri, 10 Jul 1998 18:22:51 GMT Lines: 27 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news-fra1.dfn.de!news-was.dfn.de!nntp-out.monmouth.com!newspeer.monmouth.com!news2.ais.net!jamie!ais.net!ix.netcom.com!netcom!alderson In article dpbsmith@world.std.com (Daniel P. B. Smith) writes: >According to _my_ fuzzy memory, the ASCII standard defines control-Y (0x19), >NOT control-Z, as meaning physical end of media (e.g. paper tape). Whether >this is logically the same as end-of-file, I couldn't say. The fact that some >DEC operating systems (RT-11 and OS/8, for sure), CP/M, and early MS-DOS all >use control-Z for this function is, to me, a strong piece of evidence that >MS-DOS and CP/M borrowed many details from DEC. The standard said that CTRL-Z >was to be used as a placeholder to mark or replace characters that were known >to have been lost or garbled in transmission. And this was how it was used on System/360-architecture operating systems when translating ASCII magtapes, as I learned when reading Tops-20 sources written with EDIT (<= SOS): Certain bytes were written to the tape with (intentional) bad parity, for which MVS happily returned ^Z instead of the actual data. An option exited on the DD card, probably in the DCB field, to ignore bad parity. EBCDIC, by the bye, defines CR (015, 0D), LF (045, 25), and NL (025, 15), all of which appear on my ancient, slightly moth-eaten green card (GX20-1703-7: IBM System/360 Reference Data) and a 1980s era yellow card (GX20-1850-3: IBM System/370 Reference Summary). As I recall, the NL code was used by things like 2740 terminals; I'm not sure what used CR or LF--not line printers, most assuredly! -- Rich Alderson Last LOTS Tops-20 Systems Programmer, 1984-1991 last name @ XKL dot COM Current maintainer, MIT TECO EMACS (v. 170) ###### From: "Carl R. Friend" Newsgroups: alt.folklore.computers Subject: Re: slash / backslash Date: Sun, 12 Jul 1998 06:51:34 -0400 Organization: as little as possible! Lines: 23 Message-ID: <35A89536.34FDB51F@stoneweb.com> References: <35996F7F.7A750B71@stoneweb.com> <3599DB87.1020A1A8@tnglwood.demon.co.uk> <359ADF58.3DC857FC@stoneweb.com> <35a3bd4d.672142148@news.xmission.com> <35A3DA91.5E16F912@tnglwood.demon.co.uk> <35a497b5.3477474@news.enterprise.net> <6o31gb$6qu$1@shadow.skypoint.net> NNTP-Posting-Host: zephyr.ultranet.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@ultra.net X-Ultra-Time: 12 Jul 1998 10:51:37 GMT X-Mailer: Mozilla 2.0 (X11; I; Linux 2.0.29 i586) Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!news.maxwell.syr.edu!netnews.com!feed2.news.erols.com!erols!news.ultranet.com!not-for-mail George R. Gonzalez wrote: > > Not too much more complicated. It just does an end-around carry > > 111111111 + 0000001 = 0000000 + end-around carry => 0000001 ARRGH! I completely forgot about the end- around carry. Thanks for reminding me! But that still does give you a negative zero when incrementing a negative one. If you've taken negative zero as a NaN, how do you resolve that problem? Special programming technique or let the hardware realise it and complement the negative zero into a true zero? -- ______________________________________________________________________ | | | | Carl Richard Friend (UNIX Sysadmin) | West Boylston | | Minicomputer Collector / Enthusiast | Massachusetts, USA | | mailto:carl.friend@stoneweb.com | | | http://www.ultranet.com/~engelbrt/carl/museum | ICBM: N42:22 W71:47 | |________________________________________________|_____________________| ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers,comp.lang.forth Subject: Re: slash / backslash Date: 19 Jul 1998 21:18:30 GMT Message-ID: <6otnr6$8ip$1@irk.zetnet.co.uk> References: NNTP-Posting-Host: man-033.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 900883110 8793 194.247.41.41 (19 Jul 1998 21:18:30 GMT) NNTP-Posting-Date: 19 Jul 1998 21:18:30 GMT X-Everything: Net-Tamer V 1.08X Lines: 111 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!nntprelay.mathworks.com!news-peer.gip.net!news-lond.gip.net!news.gsl.net!gip.net!dispose.news.demon.net!demon!peer.news.zetnet.net!zetnet.co.uk!not-for-mail (I attempted to post this a while ago, but it screwed up and I had no idea why. I just found the file in a completely different directory, so here we go...) Crossposted to comp.lang.forth, since it appears to have drifted that way anyway (and I've quoted from one of c.l.f's regular posters). On 1998-07-02 Neil.Franklin@ccw.ch.remove said: :> Yes, but & doesn't short circuit, which was the point under :> discussion... once... somewhere... *looks around frantically* :That comes from joining an thread after its beginning has expired :from my news feed :-). tee hee :> Welcome back from holiday (says the guy who didn't even notice your absence... oops). :> Forth-79 defined the value returned by 0< as 0 or 1. All the :I was thinking of cmFORTH (the one Moore wrote for the NC4000 chip). :That would be based on Forth-83. That would be based on nothing else on the planet, you mean! It's a beautiful version of Forth, provided you can happily think of such things as vocabularies as optional extras. Played with Pygmy? :But I think the Forth-79 based stuff on the 6502 (C64) also used :all-1s, but memory is fading on this one. Hmm. I'll just check this. I have MVP-FORTH ready and waiting to be sparked up... MVP-FORTH VERSION 1.0405.03 -2 0< . 1 OK That settles that, then. Now... 8086 Fig-FORTH Version 1.0A -2 0< . 1 ok (I thought that would be different...) On the other hand, F83 is definitely -1. :Should be possible. Replacing conditional jumps with a few masking :instructions is possible. Actuall the ARM simply allows any :instruction to be conditional so you simply arange for the trua and :false cases to appear inline with the appropriate conditionals. Ah, I tend to do most of my thinking for the 8088 range of processors, because they are what I have. And on those things, it pays to avoid branches, and there are no conditional instructions. :But on the NC4000 (not pipelined at all, not even memory access :interleaved with instruction decode) 0< and 0BRANCH (simply called :IF) are single word opcodes (no implementing there) and MIN/MAX :simply uses: :: MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; Well, it's more devilish than that - when I read the cmForth source, I giggled on seeing a WHILE in one of the definitions and a corresponding THEN in the other one... in fact, I have to see if I can find the offenders: : MAX OVER OVER - 0< IF BEGIN SWAP-DROP ; : MIN OVER OVER - 0< UNTIL THEN DROP ; Wrong conditionals, right crime. :> Aren't they beautiful? Of course, cmForth was an optimising compiler for the NC4000, and conditional branches weren't expensive at all - no pipeline; they didn't need to be - so the odd few wouldn't hurt. The 8088 drops 14 cycles in a taken conditional. That changes the trade-offs: ;tos in BX MAX: POP AX SUB AX,BX ;if a < b CWD AND AX,DX ;add (a-b) to b ADD BX,AX ;for a NEXT ;with thanks to Dr Julian V Noble, who showed me this :My attempt at non-conditional would be: :: MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; Well, Forthising the above would have it more: : MAX OVER OVER - DUP 0< AND + ; which is possibly even nicer than Moore's original version. :OK, enough of scaring people :-). Never!!! There is a reason why Forth is my favourite language... ObAFC: Is/was there a machine anywhere, that wasn't a Forth machine, which could effectively branch predict someone doing something of the order of (IP) -> WP IP + 2 -> IP ... (WP) -> PC ? -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her... ###### From: "Leo Liu" Newsgroups: alt.folklore.computers,comp.lang.forth Subject: Re: slash / backslash Date: 28 Jul 1998 12:20:52 GMT Organization: ¶Æ¯º¬õ¹Ð Lines: 34 Message-ID: <01bdba21$aff1fa00$5e071ea3@leo.hinet.net> References: <6otnr6$8ip$1@irk.zetnet.co.uk> NNTP-Posting-Host: h94.s7.ts30.hinet.net X-Newsreader: Microsoft Internet News 4.70.1161 Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!enews.sgi.com!news.idt.net!newspeer.monmouth.com!serv.hinet.net!netnews.hinet.net!news lisard@zetnet.co.uk wrote: > ... > :: MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; > ... > : MAX OVER OVER - 0< IF BEGIN SWAP-DROP ; > : MIN OVER OVER - 0< UNTIL THEN DROP ; > ... > ;tos in BX > MAX: POP AX > SUB AX,BX ;if a < b > CWD > AND AX,DX ;add (a-b) to b > ADD BX,AX ;for a > NEXT ;with thanks to Dr Julian V Noble, who showed me this > ... > :: MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; > > : MAX OVER OVER - DUP 0< AND + ; > ... The definitions above are all wrong!! In math, a < b and a - b < 0 are equivalent. In computer, because computer does finite precision arithmetic, a < b is equivalent to the following two conditions: 1. a - b < 0 and no overflow 2. a - b > 0 and overflow There is no simple method to recognize an overflow occured, whether in Forth or x86 assembly. It had better to use IF or conditional branch. Charles Liu ###### From: aph@cygnus.remove.co.uk (Andrew Haley) Newsgroups: alt.folklore.computers,comp.lang.forth Subject: Re: slash / backslash Followup-To: alt.folklore.computers,comp.lang.forth Date: 28 Jul 1998 12:41:56 GMT Organization: Cygnus Solutions, Cambridge, UK Lines: 40 Message-ID: <6pkguk$c28$1@korai.cygnus.co.uk> References: <6otnr6$8ip$1@irk.zetnet.co.uk> <01bdba21$aff1fa00$5e071ea3@leo.hinet.net> NNTP-Posting-Host: korai.cygnus.co.uk X-Newsreader: TIN [version 1.2 PL2] Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news-ge.switch.ch!nntprelay.mathworks.com!news-peer-east.sprintlink.net!news.sprintlink.net!rill.news.pipex.net!pipex!join.news.pipex.net!pipex!cygnus.co.uk!aph Leo Liu (lbcliu@ms18.hinet.net) wrote: : lisard@zetnet.co.uk wrote: : : > ... : > : MAX OVER OVER - 0< IF BEGIN SWAP-DROP ; : > : MIN OVER OVER - 0< UNTIL THEN DROP ; : > ... : > ;tos in BX : > MAX: POP AX : > SUB AX,BX ;if a < b : > CWD : > AND AX,DX ;add (a-b) to b : > ADD BX,AX ;for a : > NEXT ;with thanks to Dr Julian V Noble, who showed me this : The definitions above are all wrong!! : In math, a < b and a - b < 0 are equivalent. : In computer, because computer does finite precision arithmetic, : a < b is equivalent to the following two conditions: : 1. a - b < 0 and no overflow : 2. a - b > 0 and overflow Not really, no. This all depends on whether you want circular or linear relationals, and there are good arguments for using both. - 0< is a perfectly good circular relational, and there's no good reason why MIN shouldn't use it. Andrew. ###### From: lisard@zetnet.co.uk Newsgroups: alt.folklore.computers,comp.lang.forth Subject: Re: slash / backslash Date: 29 Jul 1998 20:00:25 GMT Lines: 26 Message-ID: <6pnv0p$mpl$2@irk.zetnet.co.uk> References: <01bdba21$aff1fa00$5e071ea3@leo.hinet.net> NNTP-Posting-Host: man-149.dialup.zetnet.co.uk X-Trace: irk.zetnet.co.uk 901742425 23349 194.247.40.190 (29 Jul 1998 20:00:25 GMT) NNTP-Posting-Date: 29 Jul 1998 20:00:25 GMT X-Everything: Net-Tamer V 1.08X Path: ccw.ch!pfaff.ethz.ch!news-zh.switch.ch!news.belnet.be!newsgate.cistron.nl!het.net!Cabal.CESspool!bofh.vszbr.cz!newsfeed.wli.net!newspeer.monmouth.com!peer.news.zetnet.net!zetnet.co.uk!not-for-mail On 1998-07-28 lbcliu@ms18.hinet.net said: :> :: MAX OVER OVER - 0< IF SWAP-DROP EXIT THEN DROP; :> ... :> : MAX OVER OVER - 0< IF BEGIN SWAP-DROP ; :> : MIN OVER OVER - 0< UNTIL THEN DROP ; :> ... :> ;tos in BX :> MAX: POP AX :> SUB AX,BX ;if a < b :> CWD :> AND AX,DX ;add (a-b) to b :> ADD BX,AX ;for a :> NEXT ;with thanks to Dr Julian V Noble, who showed :>me this ... :> :: MAX OVER OVER - 0< SWAP OVER AND ROT ROT NOT AND OR ; :> : MAX OVER OVER - DUP 0< AND + ; :> ... :The definitions above are all wrong!! Tested them? -- Communa (together) we remember... we'll see you falling you know soft spoken changes nothing to sing within her...