origin of the UNIX dd command

1388 views
Skip to first unread message

Charles Shannon Hendrix

unread,
Feb 16, 2004, 4:38:32 PM2/16/04
to

I recently came across a posting that claimed that the UNIX dd command
was originally called "copy and convert", and that it was changed to
dd because cc conflicted with the C compiler.

What's the true story on that?


--
shannon "AT" widomaker.com -- ["An Irishman is never drunk as long as he
can hold onto one blade of grass and not fall off the face of the earth."]


-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----== Over 100,000 Newsgroups - 19 Different Servers! =-----

Dennis Ritchie

unread,
Feb 16, 2004, 10:29:41 PM2/16/04
to

"Charles Shannon Hendrix" <sha...@news.widomaker.com> wrote in message news:o8dr0c...@escape.shannon.net...

>
>
> I recently came across a posting that claimed that the UNIX dd command
> was originally called "copy and convert", and that it was changed to
> dd because cc conflicted with the C compiler.
>
> What's the true story on that?

Spurious. dd was always named after JCL dd cards.

Closest is the original Bourne shell builtin do - od as in
A68, where by popular demand od was replaced by 'done'.

Dennis


Christopher C. Stacy

unread,
Feb 17, 2004, 2:56:58 AM2/17/04
to
//JOB SMILEY
//EXEC CCLG
//SYSPARM DD DSN=USR.LOCAL.INCLUDE.STDIO,DISP=SHR
//SYSIN DD *
MAIN()
{
PRINTF("HELLO, WORLD\N");
}
/*
//

Toby Thain

unread,
Feb 17, 2004, 6:19:46 AM2/17/04
to
"Dennis Ritchie" <d...@bell-labs.com> wrote in message news:<c0s1he$1atuh9$1...@ID-156882.news.uni-berlin.de>...

> "Charles Shannon Hendrix" <sha...@news.widomaker.com> wrote in message news:o8dr0c...@escape.shannon.net...
> >
> >
> > I recently came across a posting that claimed that the UNIX dd command
> > was originally called "copy and convert", and that it was changed to
> > dd because cc conflicted with the C compiler.
> >
> > What's the true story on that?
>
> Spurious. dd was always named after JCL dd cards.

Alright, I'll bite: What did *that* "dd" stand for?

Toby

Andrew McLaren

unread,
Feb 17, 2004, 6:43:25 AM2/17/04
to
Toby Thain wrote:

> "Dennis Ritchie" <d...@bell-labs.com> wrote


>> Spurious. dd was always named after JCL dd cards.
>
> Alright, I'll bite: What did *that* "dd" stand for?

I hesitate to leap in front of Dennis Ritchie, but ...

On IBM mainframes, programs are started by "submitting" them in JCL ("Job
Control language") to JES, the Job Entry System.

One of the most important statements in JCL is the DD statement. DD stands
for "Data Definition". It is used to define the data (duh ;-) that is used
when the job is run - input files, output files etc.

JCL has a "unique" flavour; it is utterly unlike normal programming
languages and is archane, cryptic, obscure, complex and rude. It is also
ugly and stupid. However there is so much JCL in the world that, hell, we
still have to live with it - even after thirty years of Unix ;-).

The Unix dd command copies data from one place to another, rather like a
typical DD card in a JCL stack.

The "if=", "of=", "bs=", etc, parameters to the Unix dd command retain some
of the characteristic syntactic idioms of JCL (not to say that the dd
command is as ugly as JCL - it just has a faint echo of the JCL syntax).

For a mainframe guy, the dd command on Unix gives a nice homely touch.

Cheers
Andrew

Anne & Lynn Wheeler

unread,
Feb 17, 2004, 9:43:35 AM2/17/04
to
Andrew McLaren <amc...@optusnet.n0$pam.com.au> writes:
> On IBM mainframes, programs are started by "submitting" them in JCL
> ("Job Control language") to JES, the Job Entry System.
>
> One of the most important statements in JCL is the DD statement. DD
> stands for "Data Definition". It is used to define the data (duh ;-)
> that is used when the job is run - input files, output files etc.
>
> JCL has a "unique" flavour; it is utterly unlike normal programming
> languages and is archane, cryptic, obscure, complex and rude. It is
> also ugly and stupid. However there is so much JCL in the world
> that, hell, we still have to live with it - even after thirty years
> of Unix ;-).
>
> The Unix dd command copies data from one place to another, rather
> like a typical DD card in a JCL stack.

JES2 was renamed from HASP ... for the Houston Asyncronous Spooling
System (developed by IBM'ers on NASA/Houston account).

The "problem" was that standard unit record (card reader/printer)
input/ouput to/from the job scheduler was spending all its time
(syncronously) waiting for the unit record I/O. Pre-360s, with
709x/etc, a 1401 was used to perform unit record to/from tape and the
tapes were moved back and forth between the 1401 and the 709x for
actual execution. The university I was at ... with IBSYS monitor on
709 (all tubes) running student fortran jobs tape to tape ... could do
student jobs on the order of second. Moving to early OS/360 on 360/65
... it was taking on the order of 100 times longer for each student
fortran job.

Installation of HASP cut that to on the order of 30 seconds (hasp
handling the unit record i/o asyncronously to dasd/disk ... and the
job scheduler doing its input/output to/from disk rather than unit
record directly).

The following describes simple student fortran job stream ... with
approximately 90 percent of the processing in the job scheduler ...
and only minor time spent actually doing fortran compile and
execution (i.e. 11.7 seconds out of 12.9 seconds total per job):
http://www.garlic.com/~lynn/94.html#18 CP/67 and OS MFT14

Standard OS/360 system build resulted in elapsed time of approximately
30seconds per job. By extremely careful build of the system so that
data on dasd/disk was very carefully ordered for optimal dasd/disk arm
seek, i got the elasped time per job down from a little over 30
seconds to 12.9 seconds (over 200 percent improvement). However, this
was still about 12-15 times slower than 709.

It wasn't until the university started using WATFOR monitor for
student fortran jobs that elapsed time per job got to the point where
it faster than what it had been on the 709. WATFOR basically was a
subtasking monitor, fortran compile and execution environment. It
would be started (using standard JCL and the job scheduler) and then
typically be feed a whole card tray of student jobs, typically
30-100, in a single batch run. The WATFOR monitor would handle the
transition between different student jobs w/o having to resort to
the job scheduler, jcl processing, etc.

The reference:
http://www.garlic.com/~lynn/94.html#18 CP/67 and OS MFT14

was from a presentation that I made at the fall '68, boston share
meeting while an undergraduate. While it mentions the work I had done
for extremely controlled OS/360 system builds for optimal placement of
data on dasd/disk ... the primary focus of the presentation was on
some early work I had done rewritting major portions of the CP/67
kernel to get a 80 percent cpu pathlength reduction. I had earlier
done other presentations at share and guide about the "in-queue" and
"careful re-ordering" os/360 sysgen builds.

In the 370 time-frame ... some number of the Houston HASP people were
moved to gaithesburg to form the JES2 development group. HASP was
renamed to JES2 ... but to this day there are still HASP tagged
messages. The other spooling system from that time frame was ASP ... with
two independent processors sharing some of the same DASD/disk. One of
the processors would somewhat be dedicated to unit record I/O
... somewhat akin to the 709x/1401 condigurations but using shared
dasd/disks instead of tape ... while the other processor ... typically
a much faster 360 model ... would actually be performing job
execution. Responsibility for ASP was eventually also transferred to
the g'burg group and renamed JES3. At the time, my wife was one of
the "catchers" for ASP in the g'burg group with responsibility for
helping turn ASP into JES3 (this was before they con'ed her into
going to POK with responsibility for loosely-coupled architecture).

lots of past asp, hasp, jes2, & jes3 posts
http://www.garlic.com/~lynn/93.html#2 360/67, was Re: IBM's Project F/S ?
http://www.garlic.com/~lynn/93.html#15 unit record & other controllers
http://www.garlic.com/~lynn/94.html#2 Schedulers
http://www.garlic.com/~lynn/94.html#18 CP/67 & OS MFT14
http://www.garlic.com/~lynn/95.html#7 Who built the Internet? (was: Linux/AXP.. Reliable?)
http://www.garlic.com/~lynn/96.html#9 cics
http://www.garlic.com/~lynn/96.html#12 IBM song
http://www.garlic.com/~lynn/97.html#22 Pre S/360 IBM Operating Systems?
http://www.garlic.com/~lynn/97.html#25 Early RJE Terminals (was Re: First Network?)
http://www.garlic.com/~lynn/97.html#28 IA64 Self Virtualizable?
http://www.garlic.com/~lynn/98.html#21 Reviving the OS/360 thread (Questions about OS/360)
http://www.garlic.com/~lynn/98.html#29 Drive letters
http://www.garlic.com/~lynn/99.html#33 why is there an "@" key?
http://www.garlic.com/~lynn/99.html#58 When did IBM go object only
http://www.garlic.com/~lynn/99.html#76 Mainframes at Universities
http://www.garlic.com/~lynn/99.html#77 Are mainframes relevant ??
http://www.garlic.com/~lynn/99.html#92 MVS vs HASP vs JES (was 2821)
http://www.garlic.com/~lynn/99.html#93 MVS vs HASP vs JES (was 2821)
http://www.garlic.com/~lynn/99.html#94 MVS vs HASP vs JES (was 2821)
http://www.garlic.com/~lynn/99.html#109 OS/360 names and error codes (was: Humorous and/or Interesting Opcodes)
http://www.garlic.com/~lynn/99.html#110 OS/360 names and error codes (was: Humorous and/or Interesting Opcodes)
http://www.garlic.com/~lynn/99.html#113 OS/360 names and error codes (was: Humorous and/or Interesting Opcodes)
http://www.garlic.com/~lynn/99.html#117 OS390 bundling and version numbers -Reply
http://www.garlic.com/~lynn/99.html#209 Core (word usage) was anti-equipment etc
http://www.garlic.com/~lynn/99.html#212 GEOPLEX
http://www.garlic.com/~lynn/2000.html#13 Computer of the century
http://www.garlic.com/~lynn/2000.html#55 OS/360 JCL: The DD statement and DCBs
http://www.garlic.com/~lynn/2000.html#76 Mainframe operating systems
http://www.garlic.com/~lynn/2000.html#77 Mainframe operating systems
http://www.garlic.com/~lynn/2000.html#78 Mainframe operating systems
http://www.garlic.com/~lynn/2000.html#88 ASP (was: mainframe operating systems)
http://www.garlic.com/~lynn/2000c.html#10 IBM 1460
http://www.garlic.com/~lynn/2000c.html#18 IBM 1460
http://www.garlic.com/~lynn/2000c.html#20 IBM 1460
http://www.garlic.com/~lynn/2000c.html#29 The first "internet" companies?
http://www.garlic.com/~lynn/2000d.html#36 Assembly language formatting on IBM systems
http://www.garlic.com/~lynn/2000d.html#44 Charging for time-share CPU time
http://www.garlic.com/~lynn/2000d.html#45 Charging for time-share CPU time
http://www.garlic.com/~lynn/2000e.html#14 internet preceeds Gore in office.
http://www.garlic.com/~lynn/2000e.html#15 internet preceeds Gore in office.
http://www.garlic.com/~lynn/2000f.html#30 OT?
http://www.garlic.com/~lynn/2000f.html#37 OT?
http://www.garlic.com/~lynn/2000f.html#58 360 Architecture, Multics, ... was (Re: X86 ultimate CISC? No.)
http://www.garlic.com/~lynn/2000f.html#68 TSS ancient history, was X86 ultimate CISC? designs)
http://www.garlic.com/~lynn/2000f.html#71 HASP vs. "Straight OS," not vs. ASP
http://www.garlic.com/~lynn/2001b.html#73 7090 vs. 7094 etc.
http://www.garlic.com/~lynn/2001c.html#69 Wheeler and Wheeler
http://www.garlic.com/~lynn/2001e.html#6 Blame it all on Microsoft
http://www.garlic.com/~lynn/2001e.html#7 Blame it all on Microsoft
http://www.garlic.com/~lynn/2001e.html#12 Blame it all on Microsoft
http://www.garlic.com/~lynn/2001e.html#69 line length (was Re: Babble from "JD" <dy...@jdyson.com>)
http://www.garlic.com/~lynn/2001e.html#71 line length (was Re: Babble from "JD" <dy...@jdyson.com>)
http://www.garlic.com/~lynn/2001f.html#2 Mysterious Prefixes
http://www.garlic.com/~lynn/2001f.html#26 Price of core memory
http://www.garlic.com/~lynn/2001g.html#22 Golden Era of Compilers
http://www.garlic.com/~lynn/2001g.html#44 The Alpha/IA64 Hybrid
http://www.garlic.com/~lynn/2001g.html#46 The Alpha/IA64 Hybrid
http://www.garlic.com/~lynn/2001g.html#48 The Alpha/IA64 Hybrid
http://www.garlic.com/~lynn/2001h.html#12 checking some myths.
http://www.garlic.com/~lynn/2001h.html#60 Whom Do Programmers Admire Now???
http://www.garlic.com/~lynn/2001i.html#7 YKYGOW...
http://www.garlic.com/~lynn/2001i.html#30 IBM OS Timeline?
http://www.garlic.com/~lynn/2001i.html#33 Waterloo Interpreters (was Re: RAX (was RE: IBM OS Timeline?))
http://www.garlic.com/~lynn/2001j.html#45 OT - Internet Explorer V6.0
http://www.garlic.com/~lynn/2001k.html#37 Is anybody out there still writting BAL 370.
http://www.garlic.com/~lynn/2001n.html#11 OCO
http://www.garlic.com/~lynn/2001n.html#12 Author seeks help - net in 1981
http://www.garlic.com/~lynn/2001n.html#37 Hercules etc. IBM not just missing a great opportunity...
http://www.garlic.com/~lynn/2001n.html#60 CMS FILEDEF DISK and CONCAT
http://www.garlic.com/~lynn/2002.html#31 index searching
http://www.garlic.com/~lynn/2002b.html#53 Computer Naming Conventions
http://www.garlic.com/~lynn/2002b.html#56 Computer Naming Conventions
http://www.garlic.com/~lynn/2002b.html#57 Computer Naming Conventions
http://www.garlic.com/~lynn/2002b.html#59 Computer Naming Conventions
http://www.garlic.com/~lynn/2002c.html#4 Did Intel Bite Off More Than It Can Chew?
http://www.garlic.com/~lynn/2002c.html#50 Swapper was Re: History of Login Names
http://www.garlic.com/~lynn/2002e.html#25 Crazy idea: has it been done?
http://www.garlic.com/~lynn/2002f.html#37 Playing Cards was Re: looking for information on the IBM 7090
http://www.garlic.com/~lynn/2002f.html#38 Playing Cards was Re: looking for information on the IBM
http://www.garlic.com/~lynn/2002f.html#53 WATFOR's Silver Anniversary
http://www.garlic.com/~lynn/2002g.html#61 GE 625/635 Reference + Smart Hardware
http://www.garlic.com/~lynn/2002h.html#2 DISK PL/I Program
http://www.garlic.com/~lynn/2002h.html#14 Why did OSI fail compared with TCP-IP?
http://www.garlic.com/~lynn/2002h.html#22 Why did OSI fail compared with TCP-IP?
http://www.garlic.com/~lynn/2002j.html#64 vm marketing (cross post)
http://www.garlic.com/~lynn/2002j.html#75 30th b'day
http://www.garlic.com/~lynn/2002k.html#20 Vnet : Unbelievable
http://www.garlic.com/~lynn/2002k.html#23 Vnet : Unbelievable
http://www.garlic.com/~lynn/2002k.html#34 30th b'day .... original vm/370 announcement letter (by popular demand)
http://www.garlic.com/~lynn/2002k.html#42 MVS 3.8J and NJE via CTC
http://www.garlic.com/~lynn/2002k.html#48 MVS 3.8J and NJE via CTC
http://www.garlic.com/~lynn/2002m.html#3 The problem with installable operating systems
http://www.garlic.com/~lynn/2002n.html#53 SHARE MVT Project anniversary
http://www.garlic.com/~lynn/2002n.html#54 SHARE MVT Project anniversary
http://www.garlic.com/~lynn/2002n.html#58 IBM S/370-168, 195, and 3033
http://www.garlic.com/~lynn/2002o.html#24 IBM Selectric as printer
http://www.garlic.com/~lynn/2002p.html#16 myths about Multics
http://www.garlic.com/~lynn/2002q.html#23 Free Desktop Cyber emulation on PC before Christmas
http://www.garlic.com/~lynn/2002q.html#29 Collating on the S/360-2540 card reader?
http://www.garlic.com/~lynn/2002q.html#31 Collating on the S/360-2540 card reader?
http://www.garlic.com/~lynn/2002q.html#32 Collating on the S/360-2540 card reader?
http://www.garlic.com/~lynn/2002q.html#35 HASP:
http://www.garlic.com/~lynn/2002q.html#36 HASP:
http://www.garlic.com/~lynn/2002q.html#37 HASP:
http://www.garlic.com/~lynn/2002q.html#39 HASP:
http://www.garlic.com/~lynn/2002q.html#49 myths about Multics
http://www.garlic.com/~lynn/2003.html#68 3745 & NCP Withdrawl?
http://www.garlic.com/~lynn/2003c.html#51 HASP assembly: What the heck is an MVT ABEND 422?
http://www.garlic.com/~lynn/2003c.html#53 HASP assembly: What the heck is an MVT ABEND 422?
http://www.garlic.com/~lynn/2003c.html#55 HASP assembly: What the heck is an MVT ABEND 422?
http://www.garlic.com/~lynn/2003c.html#63 Re : OT: One for the historians - 360/91
http://www.garlic.com/~lynn/2003d.html#59 unix
http://www.garlic.com/~lynn/2003f.html#0 early vnet & exploit
http://www.garlic.com/~lynn/2003g.html#13 Page Table - per OS/Process
http://www.garlic.com/~lynn/2003g.html#64 UT200 (CDC RJE) Software for TOPS-10?
http://www.garlic.com/~lynn/2003i.html#12 Which monitor for Fujitsu Micro 16s?
http://www.garlic.com/~lynn/2003j.html#19 tcp time out for idle sessions
http://www.garlic.com/~lynn/2003m.html#53 model 91/CRJE and IKJLEW
http://www.garlic.com/~lynn/2003m.html#57 wsmr-simtel20 shut down 10 years ago today


--
Anne & Lynn Wheeler | ly...@garlic.com - http://www.garlic.com/~lynn/
Internet trivia, 20th anniv: http://www.garlic.com/~lynn/rfcietff.htm

Adam Thornton

unread,
Feb 17, 2004, 10:28:49 AM2/17/04
to
In article <c0s1he$1atuh9$1...@ID-156882.news.uni-berlin.de>,

Dennis Ritchie <d...@bell-labs.com> wrote:
>Spurious. dd was always named after JCL dd cards.

And not "Do DEBE" ? I'm heartbroken.

Adam

Heinz W. Wiggeshoff

unread,
Feb 17, 2004, 4:23:24 PM2/17/04
to
Andrew McLaren (amc...@optusnet.n0$pam.com.au) writes:
>
...
> JCL has a "unique" flavour; it is utterly unlike normal programming
> languages and is archane, cryptic, obscure, complex and rude. It is also
> ugly and stupid. However there is so much JCL in the world that, hell, we
> still have to live with it - even after thirty years of Unix ;-).
...

Wash your mouth out with anti-unix soap! I too was once impressed
with the crappy layout and syntax details of JCL until I got more
immersed in The IBM Way.

I'm 90% sure that the programmers who did the JCL readers were the
same gang as the 360 assembler and batch utilities creators.
Column 1 for labels (3 in JCL), column 10 for operation (less
restricted in JCL) and the sacred column 16 for operands.[*]

The way to look at JCL beyond its dumb syntax and appreciate its
inner beauty is to see a JCL deck as a binding contract between
you, the insignificant twerp user begging for a slice of the Great
Machine's resources, and the demonic creation by thousands of
System Programmers of schedulers, initiators, allocators and
spoolers. Additionally, in some shops, there may be intervention
by Production Control Clerks, delivery services and so on.

These contracts are highly installation specific. What might get
you an all-day run at one shop, ( TIME=1440 ), gets you a JCL
error at another. Need a temp disk file? Once it was
UNIT=PUBLIC, then again, it might be [?]=VIO. Doing a big multi-
file sort? Don't forget UNIT=SEP=

In conclusion, The System will do your bidding or barf, leaving
you to clean up the mess. This feature has caused many potential
DP stars to pursue other career interests.

* A JCL continuation past column 16 results in a comment. Merde.

Joachim Pense

unread,
Feb 17, 2004, 4:17:55 PM2/17/04
to
Christopher C. Stacy wrote <uvfm69...@news.dtpq.com>:

Would the uppercase "\N" work? Or is it converted to lowercase by maybe the
//SYSPARM command?

Joachim

Peter Flass

unread,
Feb 17, 2004, 7:56:15 PM2/17/04
to
Toby Thain wrote:

> "Dennis Ritchie" <d...@bell-labs.com> wrote in message news:<c0s1he$1atuh9$1...@ID-156882.news.uni-berlin.de>...
>
>>"Charles Shannon Hendrix" <sha...@news.widomaker.com> wrote in message news:o8dr0c...@escape.shannon.net...
>>
>>>
>>>I recently came across a posting that claimed that the UNIX dd command
>>>was originally called "copy and convert", and that it was changed to
>>>dd because cc conflicted with the C compiler.
>>>
>>>What's the true story on that?
>>
>>Spurious. dd was always named after JCL dd cards.
>
>
> Alright, I'll bite: What did *that* "dd" stand for?
>

I always assumed "Data Definition", but I don't recall ever seeing it
spelled out.

Peter Flass

unread,
Feb 17, 2004, 8:05:14 PM2/17/04
to
Anne & Lynn Wheeler wrote:
> ... The university I was at ... with IBSYS monitor on

> 709 (all tubes) running student fortran jobs tape to tape ... could do
> student jobs on the order of second. Moving to early OS/360 on 360/65
> ... it was taking on the order of 100 times longer for each student
> fortran job.
...

>
> Standard OS/360 system build resulted in elapsed time of approximately
> 30seconds per job. By extremely careful build of the system so that
> data on dasd/disk was very carefully ordered for optimal dasd/disk arm
> seek, i got the elasped time per job down from a little over 30
> seconds to 12.9 seconds (over 200 percent improvement). However, this
> was still about 12-15 times slower than 709.

God, weren't them the days. No one would bother doing this sort of
thing now, and we're poorer for it.


>
> It wasn't until the university started using WATFOR monitor for
> student fortran jobs that elapsed time per job got to the point where
> it faster than what it had been on the 709. WATFOR basically was a
> subtasking monitor, fortran compile and execution environment.

I'm not really familiar with the 709, and just came in at the tail end
of the 709x era, but weren't the compilers on those systems closer to
WATFOR than to FORTRAN-G? My impression is that the FORTRAN subsystem
sat on top of IBSYS and stayed resident, sucked in those short compiles,
compiled them to memory, ran the job, and then recycled for the next one
with no program loading and relatively little I/O activity required.

Peter Flass

unread,
Feb 17, 2004, 8:20:32 PM2/17/04
to
Heinz W. Wiggeshoff wrote:

> Wash your mouth out with anti-unix soap! I too was once impressed
> with the crappy layout and syntax details of JCL until I got more
> immersed in The IBM Way.
>
> I'm 90% sure that the programmers who did the JCL readers were the
> same gang as the 360 assembler and batch utilities creators.
> Column 1 for labels (3 in JCL), column 10 for operation (less
> restricted in JCL) and the sacred column 16 for operands.[*]

In elder days, everyone programmed in assembler, so it only made sense
to have JCL resemble something familiar.

JCL has advantages and disadvantages. On one hand, it is pretty much a
standard, except for some installation-specific stuff you mention. Unix
uses command-line switches for the same purpose, and they are often a
lot less standard. Try to figure out an unfamiliar command, for example:
foo -lrQX -fabc -3. Help and/or man support is frequently cryptic when
it exists.

Also, you can give JCL tasks to relatively untrained operations
personnel, schedulers, etc.

On the other hand, I agree with most of the bad stuff you say about JCL.

Bill Vermillion

unread,
Feb 17, 2004, 10:25:03 PM2/17/04
to
In article <d6ce4a6c.04021...@posting.google.com>,

Toby Thain <to...@telegraphics.com.au> wrote:
>"Dennis Ritchie" <d...@bell-labs.com> wrote in message news:<c0s1he$1atuh9$1...@ID-156882.news.uni-berlin.de>...
>> "Charles Shannon Hendrix" <sha...@news.widomaker.com> wrote in message news:o8dr0c...@escape.shannon.net...
>> >

>> > I recently came across a posting that claimed that the UNIX
>> > dd command was originally called "copy and convert", and
>> > that it was changed to dd because cc conflicted with the C
>> > compiler.

>> > What's the true story on that?

>> Spurious. dd was always named after JCL dd cards.

>Alright, I'll bite: What did *that* "dd" stand for?

I had heard 'data dump'. My 'dd' man page does not refence that
but does say 'copy and convert a file'.

The jargon file says that it was "designed with weird, distinctly
non-Unixy keyword option syntax reminiscent of IBM System/360 JCL
(which had an elaborate DD 'Data Definition' specification for
I/O devices); though the command filled a need, the interface was
clearly a prank .."

It says it has been deprecated though I use it now and then, as
it's quite easy to convert UPPER CASE to lower case just by
passing it through dd. Or the reverse.

Bill

--
Bill Vermillion - bv @ wjv . com

Charles Shannon Hendrix

unread,
Feb 17, 2004, 10:59:28 PM2/17/04
to
On 2004-02-18, Peter Flass <Peter...@Yahoo.com> wrote:

> God, weren't them the days. No one would bother doing this sort of
> thing now, and we're poorer for it.

Some optimizations are not done now because they are impossible or
no longer necessary.

Our biggest crime now is in very, very poor code quality, and tremendous
resource waste.

I don't give a damn how fast the machines are, waste is waste. Also, it
affects things more than people will admit even today.

--
shannon "AT" widomaker.com -- ["Tara is grass, and behold how Troy lieth
low--And even the English, perchance their hour will come!"]

Heinz W. Wiggeshoff

unread,
Feb 18, 2004, 4:07:24 AM2/18/04
to
Peter Flass (Peter...@Yahoo.com) writes:
>
> I always assumed "Data Definition", but I don't recall ever seeing it
> spelled out.
>
Only in the JCL manual, IIRC.

Anne & Lynn Wheeler

unread,
Feb 18, 2004, 6:54:38 AM2/18/04
to
Charles Shannon Hendrix <sha...@news.widomaker.com> writes:
> Some optimizations are not done now because they are impossible or
> no longer necessary.
>
> Our biggest crime now is in very, very poor code quality, and tremendous
> resource waste.
>
> I don't give a damn how fast the machines are, waste is waste. Also, it
> affects things more than people will admit even today.

in the late '70s, i started asserting that the relative system
performance of disk/dasd was decreasing. this upset the disk division
people and they eventually assigned the division's performance group
to refute the claim. misc. ref:
http://www.garlic.com/~lynn/93.html#31 Big I/O or Kicking the Mainframe out the Door
http://www.garlic.com/~lynn/99.html#6 3330 disk drives

the eventual report was that I had actually understated the decline
in performance. they eventually turned the investigation into a report
on guidelines about optimizing disk allocation and useage. some
summary/extracts from the paper (delivered at share '84 meeting):
http://www.garlic.com/~lynn/2001l.html#46 MVS History (all parts)
other references:
http://www.garlic.com/~lynn/2001l.html#40 MVS History (all parts)
http://www.garlic.com/~lynn/2002i.html#18 AS/400 and MVS - clarification please
http://www.garlic.com/~lynn/2003b.html#22 360/370 disk drives

note that the relative system performance of disk/dasd has continued
to decline. basically

1) memory is being used to cache stuff to minimize disk accesses
... making careful careful layout of data with respect to disk
geometry less of an issue.

2) accesses have had more relative performance decline than transfer
rate so there is some movement to making larger and larger block
tranfers (per access)

... note that larger block transfers also increases memory useage as
compensating factor for declining relative system disk/dasd
performance (basically expanded useage of various electronic memory
for caching is increasing latency compensation technique at all levels
of system design).

Steve O'Hara-Smith

unread,
Feb 18, 2004, 1:36:12 AM2/18/04
to
On Wed, 18 Feb 2004 03:25:03 GMT
b...@wjv.comREMOVE (Bill Vermillion) wrote:

<about dd>
BV> It says it has been deprecated

Did it say what it is deprecated in favour of ? I can't think of
anything that replaces all the things it does.

--
C:>WIN | Directable Mirrors
The computer obeys and wins. |A Better Way To Focus The Sun
You lose and Bill collects. | licenses available - see:
| http://www.sohara.org/

Charlie Gibbs

unread,
Feb 17, 2004, 11:16:00 PM2/17/04
to
In article <c0u0q8$jhq$02$2...@news.t-online.com>
spam-co...@pense-online.de (Joachim Pense) writes:

It's a moot point; the missing space in "//JOB" and "//EXEC" means
that the system is going to barf long before it gets near the compiler.

--
/~\ cgi...@kltpzyxm.invalid (Charlie Gibbs)
\ / I'm really at ac.dekanfrus if you read it the right way.
X Top-posted messages will probably be ignored. See RFC1855.
/ \ HTML will DEFINITELY be ignored. Join the ASCII ribbon campaign!

Brian Inglis

unread,
Feb 19, 2004, 10:28:19 PM2/19/04
to
On Wed, 18 Feb 2004 07:36:12 +0100 in alt.folklore.computers, Steve
O'Hara-Smith <ste...@eircom.net> wrote:

>On Wed, 18 Feb 2004 03:25:03 GMT
>b...@wjv.comREMOVE (Bill Vermillion) wrote:
>
><about dd>
>BV> It says it has been deprecated
>
> Did it say what it is deprecated in favour of ? I can't think of
>anything that replaces all the things it does.

The dd program is certainly a bit of a Swiss Army chainsaw.
You could replace the ASCII<->EBCDIC conversion with a couple of tr
scripts (I wouldn't want to type those tables by hand more than once!)
Can't think of any other program that would allow you to reblock 9
track tapes (except DITTO on IBM MFs), or convert them to Unix binary
files.

--
Thanks. Take care, Brian Inglis Calgary, Alberta, Canada

Brian....@CSi.com (Brian dot Inglis at SystematicSw dot ab dot ca)
fake address use address above to reply

Walter Bushell

unread,
Feb 21, 2004, 3:38:48 PM2/21/04
to
In article <Xns9492E71B...@211.29.133.50>,
Andrew McLaren <amc...@optusnet.n0$pam.com.au> wrote:
<snip>

> JCL has a "unique" flavour; it is utterly unlike normal programming
> languages and is archane, cryptic, obscure, complex and rude. It is also
> ugly and stupid. However there is so much JCL in the world that, hell, we
> still have to live with it - even after thirty years of Unix ;-).
<Snip>

There were people who made a career of writting DD statements I am sure.


Wonder why IBM didn't sue, under a flavor and smell infringement.

Bill Vermillion

unread,
Feb 25, 2004, 11:15:02 PM2/25/04
to
In article <20040218073612....@eircom.net>,

Steve O'Hara-Smith <ste...@eircom.net> wrote:
>On Wed, 18 Feb 2004 03:25:03 GMT
>b...@wjv.comREMOVE (Bill Vermillion) wrote:
>
><about dd>
>BV> It says it has been deprecated

> Did it say what it is deprecated in favour of ? I can't think of
>anything that replaces all the things it does.

I was quoting from The Jargon File which says it was deprecated.
On this system [FreeBSD] I see no mention of that it was
deprectated. So I logged onto two client machines, one Linux and
one a SysV and neither of those mentioned that.

Maybe it's only Eric Raymond [maintainer of the Jargon file] who
thinks it's deprecated.

I don't know what you'd use to replace it either.

Bill


a client Linux machine and I

Bill Vermillion

unread,
Feb 25, 2004, 11:15:03 PM2/25/04
to
In article <jeva30pun62gvi60t...@4ax.com>,

Brian Inglis <Brian....@SystematicSw.ab.ca> wrote:
>On Wed, 18 Feb 2004 07:36:12 +0100 in alt.folklore.computers, Steve
>O'Hara-Smith <ste...@eircom.net> wrote:
>
>>On Wed, 18 Feb 2004 03:25:03 GMT
>>b...@wjv.comREMOVE (Bill Vermillion) wrote:
>>
>><about dd>
>>BV> It says it has been deprecated
>>
>> Did it say what it is deprecated in favour of ? I can't think of
>>anything that replaces all the things it does.

>The dd program is certainly a bit of a Swiss Army chainsaw.
>You could replace the ASCII<->EBCDIC conversion with a couple of tr
>scripts (I wouldn't want to type those tables by hand more than once!)
>Can't think of any other program that would allow you to reblock 9
>track tapes (except DITTO on IBM MFs), or convert them to Unix binary
>files.

And I've used the 'conv' when I moved some files from IRIX [on a
MIPS chip] to an Intel machine.

dd is handy.

Pete Fenelon

unread,
Feb 26, 2004, 4:58:19 AM2/26/04
to
Bill Vermillion <b...@wjv.comremove> wrote:
>
> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
> thinks it's deprecated.
>

The Jargon File these days sadly reflects ESR's personal beliefs and
prejudices a lot more than it does those of the community at large. He's
a one man Academie Francaise of slang.

pete
--
pe...@fenelon.com "there's no room for enigmas in built-up areas"

Adam Thornton

unread,
Feb 26, 2004, 10:37:30 AM2/26/04
to
In article <c1kl52$oob$2...@wisteria.csv.warwick.ac.uk>,
Pete Verdon <use...@verdonet.organisation.unitedkingdom> wrote:
>It's used extensively for writing floppy images for Linux installs.

Does anyone know what happened to assurdo.com and whether the stuff that
used to be there stuck around anywhere?

Its two great products were an object-oriented INTERCAL (I was very
proud of having named the compiler: "oo, ick" with the embedded comma
and space) and dd-sh, which was an attempt to replicate a
mostly-complete Unix environment with all tools built from a combination
of dd and Bourne shell.

Adam

Charles Shannon Hendrix

unread,
Feb 26, 2004, 1:55:15 PM2/26/04
to
On 2004-02-26, Pete Fenelon <pe...@fenelon.com> wrote:
> Bill Vermillion <b...@wjv.comremove> wrote:
>>
>> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
>> thinks it's deprecated.
>>
>
> The Jargon File these days sadly reflects ESR's personal beliefs and
> prejudices a lot more than it does those of the community at large. He's
> a one man Academie Francaise of slang.

Agreed. Nothing wrong with new entries, but only if they are true
observations over time.

Isn't someone else maintaining the original?


--
shannon "AT" widomaker.com -- ["There is no such thing as security. Life
is either bold adventure, or it is nothing -- Helen Keller"]

Christopher C. Stacy

unread,
Feb 26, 2004, 5:43:56 PM2/26/04
to
>>>>> On Thu, 26 Feb 2004 13:55:15 -0500, Charles Shannon Hendrix ("Charles") writes:

Charles> On 2004-02-26, Pete Fenelon <pe...@fenelon.com> wrote:
>> Bill Vermillion <b...@wjv.comremove> wrote:
>>>
>>> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
>>> thinks it's deprecated.
>>>
>>
>> The Jargon File these days sadly reflects ESR's personal beliefs and
>> prejudices a lot more than it does those of the community at large. He's
>> a one man Academie Francaise of slang.

Charles> Agreed. Nothing wrong with new entries, but only if they are true
Charles> observations over time.

Charles> Isn't someone else maintaining the original?

The "original", which has never been "published", was a file that was
kept on the ITS and SAIL computers, and the community stopped making
changes to it by 1981. By 1985, that community was pretty much
dispersed, and it was history, coinciding with the decommissioning
of the ITS machines as the main computers at the AI Lab.

Eric Raymond came along about a decade after the original file was
"finished", and picked up a copy of the file (whose copyright status
was fuzzy, but he did go to some effort in that area). He made a
bunch of changes reflecting his personal politics (notably, changing
disparaging comments about Unix into hating DOS) and published his book.
This was over the objections of many people who felt that the "Hacker's"
jargon was being co-opted by a bunch of Johnny-come-lately's who had never
been part of that (primarily MIT and SAIL) community. The specific
objections were that he was making money off the work of other people
who had contributed to the file over the years, and that his changes
had no relation to the "hacker" community who felt that they "owned"
the file and the identity.

I suppose his take is that he has rescued a document and turned back
into a living document, reflecting his belief that his subculture of
the Unix world represents the continuation of the hacker tradition.
Here's something he wrote publicly on the subject back then:

Date: 15 Dec 90 16:36:16 GMT
From: er...@snark.thyrsus.com (Eric S. Raymond)
To: alt.folklore.computers,comp.misc
Subject: Re: Jargon File Editorial Philosophy

Wake up and smell the coffee, guys. The hacker culture isn't
just a couple tiny bands of cybernerds at a handful of big
universities any more.

For an interesting commentary on the disparity between the traditions,
Google for Dick Gabriel's "Worse Is Better" paper, which contrasts our
old "Do The Right Thing" ethic of seeking elegence and perfectionism
versus the Unix "an 85% solution is good enough" philosophy.
This conflict was also reflected to some degree in the creation
of the book, "The Unix Hater's Handbook".

The "original", in my opinion, would be AI:HUMOR;JARGON 68.
"The last edit (of this line, anyway) was by Don Woods, 82-11-14."

Charles Shannon Hendrix

unread,
Feb 26, 2004, 7:03:24 PM2/26/04
to
On 2004-02-26, Christopher C. Stacy <cst...@news.dtpq.com> wrote:

> The "original", which has never been "published", was a file that was
> kept on the ITS and SAIL computers, and the community stopped making
> changes to it by 1981. By 1985, that community was pretty much
> dispersed, and it was history, coinciding with the decommissioning
> of the ITS machines as the main computers at the AI Lab.

I know its history. I have a copy of this one in an ITS filesystem I
have a copy of (as a UNIX tar file).

However, I thought some people kept maintaining it even after 1985
in much the same spirit, and were not changing but only adding new
observations.

> bunch of changes reflecting his personal politics (notably, changing
> disparaging comments about Unix into hating DOS) and published his book.

That's the problem I have with it. It was bloody stupid to change the
original text.

> This was over the objections of many people who felt that the "Hacker's"
> jargon was being co-opted by a bunch of Johnny-come-lately's who had never
> been part of that (primarily MIT and SAIL) community.

The original should be preserved, but I'd still like a running history
of jargon as new stuff comes up.

I'd love to see a modern HAKMEM.

> For an interesting commentary on the disparity between the traditions,
> Google for Dick Gabriel's "Worse Is Better" paper, which contrasts our
> old "Do The Right Thing" ethic of seeking elegence and perfectionism
> versus the Unix "an 85% solution is good enough" philosophy.

That's not the UNIX philosophy.

> The "original", in my opinion, would be AI:HUMOR;JARGON 68.
> "The last edit (of this line, anyway) was by Don Woods, 82-11-14."

The one I have in the tar file mentioned above is newer than this I
believe.

--
shannon "AT" widomaker.com -- ["We have nothing to prove" -- Alan Dawkins]

Christopher C. Stacy

unread,
Feb 26, 2004, 9:09:39 PM2/26/04
to
>>>>> On Thu, 26 Feb 2004 19:03:24 -0500, Charles Shannon Hendrix ("Charles") writes:
>> For an interesting commentary on the disparity between the traditions,
>> Google for Dick Gabriel's "Worse Is Better" paper, which contrasts our
>> old "Do The Right Thing" ethic of seeking elegence and perfectionism
>> versus the Unix "an 85% solution is good enough" philosophy.

Charles> That's not the UNIX philosophy.

If you want to argue that, maybe you should read the paper I cited, first.

Christopher C. Stacy

unread,
Feb 26, 2004, 9:34:15 PM2/26/04
to
>>>>> On Thu, 26 Feb 2004 19:03:24 -0500, Charles Shannon Hendrix ("Charles") writes:

Charles> On 2004-02-26, Christopher C. Stacy <cst...@news.dtpq.com> wrote:
>> The "original", which has never been "published", was a file that was
>> kept on the ITS and SAIL computers, and the community stopped making
>> changes to it by 1981. By 1985, that community was pretty much
>> dispersed, and it was history, coinciding with the decommissioning
>> of the ITS machines as the main computers at the AI Lab.

Charles> I know its history. I have a copy of this one in an ITS
Charles> filesystem I have a copy of (as a UNIX tar file).

Charles> However, I thought some people kept maintaining it even
Charles> after 1985 in much the same spirit, and were not changing
Charles> but only adding new observations.

A community is made up of a bunch of people with a shared culture.
That particular community was very, very small, and it ceased to
exist about 20 years ago. Over a period of a few years, the people
dispersed from each other; the culture did not live on elsewhere.
There was essentially no continuity from that community to the next
group of people who replaced them in their original location.

Eric Raymond's revivial is the notion that the historical culture
would appeal to some new people, if only some of its recorded traces
were modernized to reflect the thinking of the new people.
His book represents the mass-marketing of a contrived new culture.

I'm not (here) placing a value judgement on that, except to note that
it offended many of the people who identified themselves "Hackers"
specifically associated with that jargon document.
A few of them thought it was just a fine thing to do.

If there are "some people" who continued to maintain the jargon file,
they would not be the original (now non-existant) culture, and their
product would therefore not be the "original" document. It would be
a document like Eric Raymond's, reflecting their culture and their
own editorial policies. The "original" is necessarily historical.

Roland Hutchinson

unread,
Feb 26, 2004, 10:16:20 PM2/26/04
to
In article <cg1m1c...@escape.shannon.net> on Thursday 26 February 2004

Perhaps. But it's also not NOT the Unix philosophy, which is sort of Dick's
point (as understood and very loosely paraphrased by me): good enough is
good enough, and things that aren't good enough can be incrementally
improved until they are. You really should read the paper, and its several
sequels (some of which flirt with the notion that good enough isn't good
enough). Really. I don't do them justice with my crude precis. You must
read them for yourself. All are available in the "Essays" section of the
author's site, dreamsongs.com

--
Roland Hutchinson Will play viola da gamba for food.

NB mail to my.spamtrap [at] verizon.net is heavily filtered to
remove spam. If your message looks like spam I may not see it.

Frank McConnell

unread,
Feb 27, 2004, 12:59:33 AM2/27/04
to
Charles Shannon Hendrix <sha...@news.widomaker.com> wrote:
> I'd love to see a modern HAKMEM.

Maybe _Hacker's Delight_ by Henry S. Warren, Jr.? (ISBN 0-201-91465-4)
<http://www.hackersdelight.org/>

-Frank McConnell

Joachim Pense

unread,
Feb 27, 2004, 8:52:17 AM2/27/04
to
Charles Shannon Hendrix wrote <jefl1c...@escape.shannon.net>:

> On 2004-02-26, Pete Fenelon <pe...@fenelon.com> wrote:
>> Bill Vermillion <b...@wjv.comremove> wrote:
>>>
>>> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
>>> thinks it's deprecated.
>>>
>>
>> The Jargon File these days sadly reflects ESR's personal beliefs and
>> prejudices a lot more than it does those of the community at large. He's
>> a one man Academie Francaise of slang.
>
> Agreed. Nothing wrong with new entries, but only if they are true
> observations over time.
>
> Isn't someone else maintaining the original?
>
>

Probably not maintaining, but you'll find it here:
<http://www.dourish.com/goodies/jargon.html>
Joachim

Brian Inglis

unread,
Feb 27, 2004, 7:32:09 PM2/27/04
to
On Thu, 26 Feb 2004 19:03:24 -0500 in alt.folklore.computers, Charles
Shannon Hendrix <sha...@news.widomaker.com> wrote:

>On 2004-02-26, Christopher C. Stacy <cst...@news.dtpq.com> wrote:
>
>> The "original", which has never been "published", was a file that was
>> kept on the ITS and SAIL computers, and the community stopped making
>> changes to it by 1981. By 1985, that community was pretty much
>> dispersed, and it was history, coinciding with the decommissioning
>> of the ITS machines as the main computers at the AI Lab.
>
>I know its history. I have a copy of this one in an ITS filesystem I
>have a copy of (as a UNIX tar file).
>
>However, I thought some people kept maintaining it even after 1985
>in much the same spirit, and were not changing but only adding new
>observations.
>
>> bunch of changes reflecting his personal politics (notably, changing
>> disparaging comments about Unix into hating DOS) and published his book.
>
>That's the problem I have with it. It was bloody stupid to change the
>original text.
>
>> This was over the objections of many people who felt that the "Hacker's"
>> jargon was being co-opted by a bunch of Johnny-come-lately's who had never
>> been part of that (primarily MIT and SAIL) community.
>
>The original should be preserved, but I'd still like a running history
>of jargon as new stuff comes up.
>
>I'd love to see a modern HAKMEM.

Look for "Hacker's Delight" by Hank Warren

Bill Vermillion

unread,
Feb 29, 2004, 9:25:09 PM2/29/04
to
In article <jefl1c...@escape.shannon.net>,

Charles Shannon Hendrix <csh...@SPAM.widomaker.com> wrote:
>On 2004-02-26, Pete Fenelon <pe...@fenelon.com> wrote:
>> Bill Vermillion <b...@wjv.comremove> wrote:
>>>
>>> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
>>> thinks it's deprecated.

>> The Jargon File these days sadly reflects ESR's personal beliefs and
>> prejudices a lot more than it does those of the community at large. He's
>> a one man Academie Francaise of slang.

>Agreed. Nothing wrong with new entries, but only if they are true
>observations over time.

>Isn't someone else maintaining the original?

AFAIK he's the one who handles it all. I remember when he took it
over and then had it published in print with his name on it. That
made him an instant-authority for the non-computer speaking press.

Bill Vermillion

unread,
Feb 29, 2004, 10:05:00 PM2/29/04
to
In article <ullmp1...@news.dtpq.com>,

Christopher C. Stacy <cst...@news.dtpq.com> wrote:
>>>>>> On Thu, 26 Feb 2004 13:55:15 -0500, Charles Shannon Hendrix ("Charles") writes:
>
> Charles> On 2004-02-26, Pete Fenelon <pe...@fenelon.com> wrote:
> >> Bill Vermillion <b...@wjv.comremove> wrote:
> >>>
> >>> Maybe it's only Eric Raymond [maintainer of the Jargon file] who
> >>> thinks it's deprecated.

....

> Charles> Agreed. Nothing wrong with new entries, but only if they are true
> Charles> observations over time.

> Charles> Isn't someone else maintaining the original?

>The "original", which has never been "published", was a file that was
>kept on the ITS and SAIL computers, and the community stopped making
>changes to it by 1981. By 1985, that community was pretty much
>dispersed, and it was history, coinciding with the decommissioning
>of the ITS machines as the main computers at the AI Lab.

....

>For an interesting commentary on the disparity between the traditions,
>Google for Dick Gabriel's "Worse Is Better" paper, which contrasts our
>old "Do The Right Thing" ethic of seeking elegence and perfectionism
>versus the Unix "an 85% solution is good enough" philosophy.
>This conflict was also reflected to some degree in the creation
>of the book, "The Unix Hater's Handbook".

Thanks for pointing that out. I just found it and will read it a
bit later.

>The "original", in my opinion, would be AI:HUMOR;JARGON 68.
>"The last edit (of this line, anyway) was by Don Woods, 82-11-14."

The only place I see that via a Google search shows the archive
for it is off line since 2001. Any pointers where I might find
that stashed away somewhere?

Bill

Bill Vermillion

unread,
Feb 29, 2004, 10:15:01 PM2/29/04
to
In article <c1kl52$oob$2...@wisteria.csv.warwick.ac.uk>,
Pete Verdon <use...@verdonet.organisation.unitedkingdom> wrote:
>Bill Vermillion wrote:
>> Steve O'Hara-Smith <ste...@eircom.net> wrote:
>>> (Bill Vermillion) wrote:
>
>>><about dd>
>>>BV> It says it has been deprecated
>
>>>Did it say what it is deprecated in favour of ? I can't think of
>>>anything that replaces all the things it does.
>
>> I was quoting from The Jargon File which says it was deprecated.
>> On this system [FreeBSD] I see no mention of that it was
>> deprectated. So I logged onto two client machines, one Linux and
>> one a SysV and neither of those mentioned that.

>It's used extensively for writing floppy images for Linux installs.

And others also.

I have used it to take 3.5" and 5.25" distribution disks and make
them into images, and store then on CDs for archival purposes.

Those will usually be able to recreate the original disks far
longer than floppy media.

Rich Alderson

unread,
Mar 1, 2004, 1:15:42 PM3/1/04
to
b...@wjv.comREMOVE (Bill Vermillion) writes:

It's available in the on-line archives of ITS, in a gzip'd tar file containing
the humor directory from AI. I've made the Jargon files from there available
at

http://www.panix.com/~alderson/humor.zip

for a few days.

--
Rich Alderson | /"\ ASCII ribbon |
ne...@alderson.users.panix.com | \ / campaign against |
"You get what anybody gets. You get a lifetime." | x HTML mail and |
--Death, of the Endless | / \ postings |

Reply all
Reply to author
Forward
0 new messages