How come include file patent isn't mentioned in position paper?

Mark D. Baushke mdb at ESD.3Com.COM
Wed May 15 03:12:06 AEST 1991


On 13 May 91 13:17:32 GMT, scs at iti.org (Steve Simmons) said:

Steve> From: barmar at think.com (Barry Margolin)
>This sounds much fancier than the standard #include file mechanism.  Most
>#include facilities don't have any way to specify portions of files, only
>whole files.

Steve> If memory server, the MTS file system has always provided the
Steve> feature.  It worked something like

Steve>   $CONTINUE WITH <filename>[line#][line#]

Close. The syntax was:

	$CONTINUE WITH [<login>:]filename[(start#[,end#[,inc#]])]

where login 	was the four character login id, 
      filename 	was the up to 14 character filename (case insensitive)
      start#
      end# 	were each allowed to be expressions which yeilded a
		line number. *F was short hand for the first line
		number in the file (which could be negative)
		*L was the short hand for the last line number in the
		file.
      inc#	was the increment to be added to the current start# to
		get the subsequent lines.

	The default value for start# is 1. The default value for end#
	is *L. The way to append to the end of a file was FILE(*L+1).
	I have fogotten the default value of inc#, but I have some
	circa 1979 manuals at home if anyone really want to know.

Internally line numbers were stored as a 32 bit integer. Externally,
they were displayed as if they had been divided by 1000. Line number
1.000 therefore had an internal representation of 1000.

The maximum length of one line in the file was 32768 bytes.

It was also possible to give a list of files on the $CONTINUE WITH
line:

	$CONTINUE WITH 1F23:DATA(1,*L)+*SOURCE*(1,1)+1F23:DATA(-1,0.099,0.001)

which would let the program read all of the lines from the user
account 1F23:DATA starting at line 1 through the end of file followed
by reading from the moral equivalent of stdin for one line followed by
reading the lines between -1 and 0.099 of DATA. Any of those lines
could in turn contain $CONTINUE WITH lines.

Steve> Given the extreme variation mts files were allowed in line numbering,
Steve> it could get quite pathological.

Yup. The Michigan Terminal System was actually very nice to use. The
only problem was that it did not have a hierarchical filesystem beyond
having a separate directory for each user. 

I knew folks that put the source of their programs into the negative
line numbers and had the executable starting at line 1. 

Steve> -- 
Steve> "SPAM is a registered trademark of a pork product
Steve>  packed only by Geo. A Hormel & Co. Corp."
Steve>      -- Sun Technical Bulletin, March 1991, pg ii

Enjoy!
-- 
Mark D. Baushke
mdb at ESD.3Com.COM



More information about the Comp.org.usenix mailing list