4 ms·
If you define a "program" as "a series of instructions to perform a task, where the instruction set is Turing Complete", then your statement is tautologically c
by chias 6y ago
If you define a "program" as "a series of instructions to perform a task, where the instruction set is Turing Complete", then your statement is tautologically correct based on your definition. A much more general definition is simply "a series of instructions to perform a task". Do you feel that the former definition of the word "program" is the only one worth using?
As an example: if you use a Game Maker application to construct a video game where your inputs are the graphics, the level design, and some basic scripting to connect them up, is the resulting output "not a program" because the input scheme that you used in order to define its behavior was not Turing Complete? You could make an argument that, in the context of Quines, this isn't relevant because the Program is not outputting its own source code but only the top-most layer of its definition, but then again that's true at some level for any Quine not written in machine code (and even then it'd probably be missing much of the OS / display drivers / etc.).
Edit: removed an example about "programmable TV remotes" because it wasn't a very good example, and added a note about Quines.
- s_dev 6y ago>"a series of instructions to perform a task" Limitations of those instructions is the key aspect. You couldn't use any English or natural language expression for example. It might seem obvious but complexity of those instructions is what makes the language abstract. Having complicated instructions isn't always desireable though e.g. the CISC vs RISC debate.
- chias 6y agoTo be clear, I am in complete agreement with every point you've made explicitly in this thread. What I do not agree with is the following implicit claim: An HTML file cannot be a Quine because an HTML file is not a program because HTML is not Turing Complete.
- username90 6y agoAn html file doesn't contain just html.