gwyn@brl-tgr.ARPA (Doug Gwyn <gwyn>) (08/29/84)
There is a whole family of self-reproducing programs that extends
quite easily to bistable, tristable, etc. groupings as well as to
self-reversing programs and any other specified transformation:
/* this file is source.c */
main(){system("cat source.c");}
This reduces most such questions to triviality.jcz@ncsu.UUCP (John Carl Zeigler) (08/31/84)
Re: main(){system("cat foo.c");}
I beleive there is an implicit assumption that programs that
simply print out their source files do not qualify as
"self reproducing" because they are so trivial. If we alow this,
then cat can produce any arbitrary program whose source is already
on the system. Not very exciting.
--jcz
North Carolina State Universityjack@rlgvax.UUCP (09/04/84)
> Re: main(){system("cat foo.c");} > > I beleive there is an implicit assumption that programs that > simply print out their source files do not qualify as > "self reproducing" because they are so trivial. If we alow this, > then cat can produce any arbitrary program whose source is already > on the system. Not very exciting. > > --jcz > North Carolina State University To make writing self-replicating C programs fun, I'd say the reasonable restriction is that they are forbidden to make any system call except 'write'. I have one that satisfies the further restriction that it makes no call on any library routine except 'write'.