Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[9fans] bundle //GO.SYSIN DD

221 views
Skip to first unread message

Sander van Dijk

unread,
Jul 26, 2008, 7:13:23 AM7/26/08
to
Hi 9fans,

Does anyone know what the meaning/origin of "//GO.SYSIN DD" in
bundle(1) is? I've seen this on other unix-likes as well, but I
thought I'd ask here since the awareness of historical context seems
to be quite a bit above average on this list.

Thanks, Sander.

Charles Forsyth

unread,
Jul 26, 2008, 7:25:08 AM7/26/08
to

Rob Pike

unread,
Jul 26, 2008, 10:38:38 AM7/26/08
to
I first saw it used in bundling software created by James Gosling,
and liked the (relevant, I might add) joke so much I put it in the
Plan 9 version.

-rob

Greg Comeau

unread,
Jul 28, 2008, 5:11:13 AM7/28/08
to
In article <ba0d3bc70807260409j3d0...@mail.gmail.com>,

Wow, never thought I'd see that again in my lifetime :)
It's from JCL (Job Control Language) from IBM mainframes,
in short, the "statement" in your subject involved a way
to specify where your "default" input was coming from
(it had/has other attributes you could add to the line to
say more about the file etc). Dunno why it's coming along
here but probably some sort of emulator or something similar.
--
Greg Comeau / 4.3.10.1 with C++0xisms now in beta!
Comeau C/C++ ONLINE ==> http://www.comeaucomputing.com/tryitout
World Class Compilers: Breathtaking C++, Amazing C99, Fabulous C90.
Comeau C/C++ with Dinkumware's Libraries... Have you tried it?

Sander van Dijk

unread,
Jul 28, 2008, 7:42:37 AM7/28/08
to
Charles, Rob, Greg,

Thanks for the context.

Greetings, Sander.

ron minnich

unread,
Jul 28, 2008, 11:27:31 AM7/28/08
to
more useless crap from memory:

the actual correct usage is
//GO.SYSIN DD *

but of course the * would make things messy.

See this and realize this stuff is still being taught!
http://www.coba.unt.edu/itds/courses/bcis3690/bcis3690.htm

ron

Roman V. Shaposhnik

unread,
Jul 29, 2008, 1:48:02 PM7/29/08
to
So... for the dense ones (like myself), what IS the joke Rob was
referring to? JCL == Java Control Language?

Thanks,
Roman.

Rodolfo kix Garci­a

unread,
Jul 29, 2008, 1:57:43 PM7/29/08
to
Job Control Language, I am not sure, but I belive was/is used in batch
proccessing in the IBM Mainframes.

Roman V. Shaposhnik escribió:

erik quanstrom

unread,
Jul 29, 2008, 1:59:05 PM7/29/08
to
> Job Control Language, I am not sure, but I belive was/is used in batch
> proccessing in the IBM Mainframes.

if invented today, it would be called cobolscript.

- erik


Charles Forsyth

unread,
Jul 29, 2008, 2:01:33 PM7/29/08
to
>JCL == Java Control Language?

the Job Control Language for System/360

if you follow the link i gave you'll see more.

bundles are implemented by here documents,
and the end marker for the document must not appear
in the data, and IBM JCL syntax (even if it were strictly correct)
was unlikely to appear on Unix systems
but would still have a cheery familiarity to some.
the elaborate DD statement defines file associations for a job and
can manipulate permanent files (commonly used with IEFBR14)

Roman V. Shaposhnik

unread,
Jul 29, 2008, 2:18:46 PM7/29/08
to
Charles Forsyth wrote:
>> JCL == Java Control Language?
>>
>
> the Job Control Language for System/360
>
Yeah, I kind of knew that ;-) I was trying to come
up with the best joke I could. If this is not it, I have
no clue what could be funny about JCL ;-)

> bundles are implemented by here documents,
> and the end marker for the document must not appear
> in the data, and IBM JCL syntax (even if it were strictly correct)
> was unlikely to appear on Unix systems
> but would still have a cheery familiarity to some.
> the elaborate DD statement defines file associations for a job and
> can manipulate permanent files (commonly used with IEFBR14)
>
Now this does make sense.

Thanks,
Roman.

Skip Tavakkolian

unread,
Jul 29, 2008, 2:44:38 PM7/29/08
to
> bundles are implemented by here documents,
> and the end marker for the document must not appear
> in the data

vague recollection (1982), it was something like:

//SYSIN DD *
data
records
go
here
/*


Brantley Coile

unread,
Jul 29, 2008, 9:09:52 PM7/29/08
to
Now, if I can figure out how to do the over punch on this keyboard. :)

Job control language was more like assembler with very, very simple
operations. The problem was that a lot of verby things got put into the
operands.

DD means data definition. The first symbol, SYSIN in this case, is the
name that the program will open. The operands after the DD operation
specified the device at which SYSIN pointed. Splat was a sort of `here'
document. The /* was the end-of-file for it.

Everyone I knew carried the Brown book which has examples of the common
permutations. You had to modify for your local OS installation. The
Brown book was actually blue. The fellow should have been named Black.
Because after banging your head on JCL it was Black and blue--not
Brown and blue.

Greg Comeau

unread,
Jul 30, 2008, 4:39:27 AM7/30/08
to

I doubt it. Some files (some software packaged up) are make to unravel
and install themselves on a number of different systems just by running
the file, so I suspect it was a reference to something along those
lines, though I'm totally wild guessing myself, but suspect it
was being used something like a UNIX sh `here document', and he
thought that as cute enough to drag along :)

0 new messages