Although with a sufficiently complex (or specific) compiler or processor, any arbitrary stream of information can be made into a quine.
You can embed information in either of instructions/substrate, or compiler/processor. Quines usually seem limited to describing instructions/substrate, but that’s not the only place information can be drawn from. I’ve kinda come to think of it as 2-term operation (ex: “this bit of quine code is a quine wrt python”).
(More physical quines: Ink scribbles on a sheet of paper are a quine wrt a copy-machine. At about the far-end of “replicative complexity gets stored in the processor,” you have the “activated button” of a button-making machine (which activates with a button, and outputs buttons in an active state). I think the “activated button” here is either a quine, or almost a quine.)
The cool thing about life is that it it is both a quine, and its own processor. (And also, sorta its own power source.)
I find it simpler to call systems like this “living” (at least while active/functional), since they’re meaningfully more than just quines.
Viruses are definitely quines, though. Viruses and plasmids are non-living quines that compile and run on living biological systems.
Physics: Feels close. Hm… biological life as a self-compiler on a physics substrate?
DNA or gametes seem really close to a “quine” for this: plug it into the right part of an active compiler, and it outputs many instances of its own code + a customized compiler. Although it crashes/gets rejected if the compiler is too different (ex: plant & animal have different regulatory markers & different sugar-related protein modifications).
I don’t have a fixed word for the “custom compiler” thing yet (“optimized compiler”? “coopted compiler”? “spawner”? “Q-spawner”?). I have seen analogous stuff in other places, and I’m tempted to call it a somewhat common pattern, though. (ex: vertically-transmitted CS compiler corruption, or viruses producing tumor micro-environments that are more favorable to replicating the virus)
DNA is a quine, when processed by DNA Replicase.
Although with a sufficiently complex (or specific) compiler or processor, any arbitrary stream of information can be made into a quine.
You can embed information in either of instructions/substrate, or compiler/processor. Quines usually seem limited to describing instructions/substrate, but that’s not the only place information can be drawn from. I’ve kinda come to think of it as 2-term operation (ex: “this bit of quine code is a quine wrt python”).
(More physical quines: Ink scribbles on a sheet of paper are a quine wrt a copy-machine. At about the far-end of “replicative complexity gets stored in the processor,” you have the “activated button” of a button-making machine (which activates with a button, and outputs buttons in an active state). I think the “activated button” here is either a quine, or almost a quine.)
The cool thing about life is that it it is both a quine, and its own processor. (And also, sorta its own power source.)
I find it simpler to call systems like this “living” (at least while active/functional), since they’re meaningfully more than just quines.
Viruses are definitely quines, though. Viruses and plasmids are non-living quines that compile and run on living biological systems.
Isn’t life then a quine running on physics itself as a substrate?
I hadn’t considered thinking of quines as two-place, but that’s obvious in retrospect.
It’s sorta non-obvious. I kinda poked at this for hours, at some point? It took a while for me to settle on a model I liked for this.
Here’s the full notes for what I came up with.
Physics: Feels close. Hm… biological life as a self-compiler on a physics substrate?
DNA or gametes seem really close to a “quine” for this: plug it into the right part of an active compiler, and it outputs many instances of its own code + a customized compiler. Although it crashes/gets rejected if the compiler is too different (ex: plant & animal have different regulatory markers & different sugar-related protein modifications).
I don’t have a fixed word for the “custom compiler” thing yet (“optimized compiler”? “coopted compiler”? “spawner”? “Q-spawner”?). I have seen analogous stuff in other places, and I’m tempted to call it a somewhat common pattern, though. (ex: vertically-transmitted CS compiler corruption, or viruses producing tumor micro-environments that are more favorable to replicating the virus)