[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Social Contract GR's Affect on sarge

On Tue, 2004-04-27 at 16:14, Thiemo Seufer wrote:
> Joe Wreschnig wrote:
> [snip]
> > > > > Program: Software which is intended for execution on an actually
> > > > > 	existing interpreter.
> > > > > 
> > > > > Data: Software which is not ~.
> [snip]
> > > > Your next task is to define
> > > > the term 'execute'.  :)
> > > 
> > > I use for it as well the establishend meaning in CS.
> > 
> > The best definition of 'execute' in computer science is "can be decided
> > by some Turing machine".
> By a _specific_ Turing machine, that is.
> > Any stream of bits can be not only be decided
> > by a Turing machine, but can also be a Turing machine itself. It just
> > depends on what encodings you pick (and, you can write programs to
> > automatically generate appropriate encodings...)
> That's why I wrote "actually existing interpreter". You can't decide
> if some bit stream is an executable without defining the execution
> environment.

On the contrary, I can -- any bit stream is executable. Thus, I have
decided it.

> > I think, anyone who has studied CS (more specifically, the theory of
> > computation) will eventually come to the conclusion that all bit streams
> > are software.
> Yes, this is implicit in my definition attempt above.

By your definition, it would be okay for Debian to ship, say, any APL
program, regardless of the license, since we do not have an execution
environment for it.

You might respond "Debian doesn't have it, but one does exist". So how
far "out" from Debian does one have to point before it stops being
software and starts being data? Programs written for GNU/Linux? Programs
for currently running computers? All programs ever written?

All programs that will ever be written? If we don't accept this, then
"data" can suddenly become "program" when an interpreter for it is
written. By this, all the LISP code written before the first LISP
implementation was data, and suddenly became a program when a LISP
interpreter was implemented? This is nonsense; the property of being a
program shouldn't be temporally dependent.

Or is it enough for the execution environment to exist theoretically?
Then again, all bit streams are data.

There is no line, theoretically or practically, that can be drawn
between "program" and "data". Please, go over the debian-legal archives
for... an awful lot of the past 3 years. This has been discussed over
and over.
Joe Wreschnig <piman@debian.org>

Attachment: signature.asc
Description: This is a digitally signed message part

Reply to: