[comp.unix.questions] Lex and YACC C output

kenny@uiucdcsb.cs.uiuc.edu (08/02/87)

/* Written  9:05 pm  Jul 30, 1987 by allbery@ncoast.UUCP in uiucdcsb:comp.unix.questions */
|As quoted from <7846@auspyr.UUCP> by john@auspyr.UUCP (John Weald):
|+---------------
|| Has anybody taken the C source code produced from Lex and YACC and ported 
|| it to many different UNIX boxes and other operating systems 
|+---------------
|
|DOING THIS IS A VIOLATION OF YOUR UN*X LICENSE!!!
|
|Yacc output contains /usr/lib/yaccpar; lex output contains
|/usr/lib/lex/ncform.  Both are covered by license agreement and trade
|secret.  DO NOT MOVE LEX OR YACC OUTPUT BETWEEN MACHINES!
|
|An alternative:  GNU Bison (PD yacc), and I understand there is now a GNU lex.
|
/* End of text from uiucdcsb:comp.unix.questions */

Uh, that argument almost certainly would fall flat in court.  The C
code that YACC generates bears no indication in its commentary that it
has been removed from /usr/lib (the SCCS line suggests that it is
found somewhere, but...), and the license agreement states nothing
about porting the OUTPUT generated by system commands to other
systems; imagine if they considered all the output generated by printf
to be covered by the license agreement?

The man page from yacc mentiones /usr/lib/yaccpar but does not
explicitly state that its code is copied to yacc's output, nor does it
mention any restrictions on the use of the output.  The yacc manual
doesn't even discuss yaccpar.

A naive user could *easily* fail to realize that there is any
licensing violation involved.  So easily, in fact, that a court would
probably conclude that ATT didn't intend moving the code to be a
violation.  After all, there are parts of the system code (the decimal
point in printf comes to mind) that HAVE to be disclosed regularly or
the system is useless for any purpose whatever.

kBk [not a lawyer]

jbuck@epimass.EPI.COM (Joe Buck) (08/04/87)

>|+---------------
>|| Has anybody taken the C source code produced from Lex and YACC and ported 
>|| it to many different UNIX boxes and other operating systems 
>|+---------------
>|
>|DOING THIS IS A VIOLATION OF YOUR UN*X LICENSE!!!

At the Winter, '87 Usenix, word was given by several AT&T people that
AT&T officially declares yacc and lex output to be in the public
domain.  I suggest that any business that needs to rely on this
contact AT&T directly and get confirmation, but I feel the assurances
I was given at Usenix are very solid.

-- 
- Joe Buck    jbuck@epimass.epi.com
	      {seismo,ucbvax,sun,decwrl,<smart-site>}!epimass.epi.com!jbuck
	      Old arpa mailers: jbuck%epimass.epi.com@seismo.css.gov

msb@sq.UUCP (08/05/87)

Joe Buck (jbuck@epimass.EPI.COM) writes:

> At the Winter, '87 Usenix, word was given by several AT&T people that
> AT&T officially declares yacc and lex output to be in the public
> domain.  I suggest that any business that needs to rely on this
> contact AT&T directly and get confirmation, but I feel the assurances
> I was given at Usenix are very solid.

Presumably what is really meant here is not "in the public domain",
but rather, "not AT&T proprietary".  I hardly think that if I run
some SoftQuad proprietary code through yacc it would cease to be
SoftQuad proprietary!

Please, people.  "Public domain" means that nobody has a copyright on it!

Mark Brader	  "I'm not a lawyer, but I'm pedantic and that's just as good."
utzoo!sq!msb						       -- D Gary Grady

jbuck@epimass.EPI.COM (Joe Buck) (08/06/87)

[ I wrote: ]
>> At the Winter, '87 Usenix, word was given by several AT&T people that
>> AT&T officially declares yacc and lex output to be in the public
>> domain...

In article <1987Aug5.115824.22851@sq.uucp> msb@sq.UUCP (Mark Brader) writes:
>Presumably what is really meant here is not "in the public domain",
>but rather, "not AT&T proprietary".

You're right, of course.  Sorry for the confusion.
-- 
- Joe Buck    jbuck@epimass.epi.com
	      {seismo,ucbvax,sun,decwrl,<smart-site>}!epimass.epi.com!jbuck
	      Old arpa mailers: jbuck%epimass.epi.com@seismo.css.gov