4 ms·
It's less so when you know about some evolutionary programming techniques, such as using Lisp with a subset of the code that defines behavior in a tree structur
by kbenson 5y ago
It's less so when you know about some evolutionary programming techniques, such as using Lisp with a subset of the code that defines behavior in a tree structure that allows for parts of that tree to be swapped in and out from other programs using the same design whike still yielding an executing program. Combined with a fitness function you can "breed" programs for a task.
As I understand it there are attributes of Lisp and attributes of the program structure (such as putting much of the logic in that tree structure with defined split points) which makes this much more feasible than otherwise.
My guess is that DNA has evolved similarly, where the ways in which it splits and the mechanism in which it is interpreted and executed help, and also the organisms we're talking about (us and the other complex ones) have iterated to a design that's more amenable to bits being swapped. That is large chunks of us may be more similar to a lisp program with attributes that make it easy to swap parts than to a bunch of object bytecode with absolute and relative jumps all over.
Note: A lot of this is poorly remembered from a survey of AI class two decades ago, so it bears someone with a stronger background verifying I'm not making a complete hash of it.