Edward Felten discuss Programs vs. Data, and trying to distinguish. Here's an example I've given to people before, for consideration:
The ROT13 algorithm explained ("Caesar Cipher")
1) The decryption algorithm for ROT13 is to take the range of letters from a-z, and for those twenty-six letters, replace the first thirteen of them with the range of letters from n-z and the second thirteen of them with the range of letters from a-m
2) To un-ROT13, do a tr/a-z/n-za-m/ over each character in the file
3) perl -pe 'tr/a-z/n-za-m/;' < infile > outfile
Where did I step over the line, from "speech" to "code"?
Or where did I make the transition between "data" and "program"?
Ed Felten says "it seems unsatisfactory to call something a program or not based on the state of mind of its author.". I submit that for legal purposes, something along those lines of "primary use" or "dominant purpose" is the only system which will work. It's a bit like the different between accident/manslaughter/murder-second-degree/murder-first-degree. The same "data" (outcome) is treated differently depending on a legal "program" (ruling) regarding intent and effect.
By Seth Finkelstein | posted in infothought | on February 05, 2003 05:48 PM (Infothought permalink) | Followups