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