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

Re: [dvd-discuss] Bunner wins DeCSS trade secret appeal



On Monday 05 November 2001 11:42, you wrote:
> Well my personal guieline for what constitutes a program is simple, I
> divide it into three areas:
> 
> a.) Data (Gif files, text files, wavs files, etc.)

Is a self-extracting ZIP file a data file or a program?

> b.) Scripts (VBA, Javascript, shell scripts, DOS Batch files, etc.)

Microsoft got started with a BASIC program that tokenized the
ASCII program into byte codes, which were indistinguishable
from binary object code by casual examination.  Today there are
microprocessors which accept FORTH and BASIC as their
native executable form.

Did the legal status of BASIC and FORTH programs change when
these chips appeared?

> c.) executable code (ELF executables, .EXE files, etc.)

Does this depend on whether the actual hardware exists?  Up until
recently there were no 64-bit Intel processors, but there were compilers
which produced "programs" for the instruction-set architecture and
interpreters which allowed them to be run on Pentium-class machines.
Were these programs data until the actual hardware appeared, or
were they programs?  If they were programs, what would have happened
if Intel had canceled the project?  Would they have become data?

If a stream of bytes can be "executable code" even if there is no
physical machine that can execute them, then aren't all of those
"script" languages also programs since it's theoretically possible
(and in some cases easy) to build machines which execute them
natively?

> This helps the situation somewhat... although it isn't perfect.
> Newer processors use microcode, etc. to transform EXEs somewhat
> (expecially transmeta ones!).  Operating systems also perform run-time
> linking, location fix-ups, etc.

Actually, microcode went out with the 486.  The most recent machines
execute some instructions natively and expand others in the scheduler
into sequences of atomic instructions, but which instructions get which
treatment is constantly changing.

> But still, if a file contains instructions that can be executed on the
> hardware (a general purpose processor) (wether or not they use an
> operating system), it is a "program" in a real sense.  If the
> "Program" requires a run-time system other than the operating system
> (meaning excel, paradox, lotus notes, etc.), it may not be a program.

It's theoretically possible to build a machine which executes Excel
spreadsheets natively.  Does the physical existence of such a machine
make a difference?

> In my definition, the C code isn't a program until it's compiled.

I could build a machine which accepted ANSI C as its native executable
format.  Does the physical existence (or not) of such a machine change
the status of C in your taxonomy?

If so, and only one was ever built, and that one broke, would C change back?

-- 
| I'm old enough that I don't have to pretend to be grown up.|
+----------- D. C. Sessions <dcs@lumbercartel.com> ----------+