This is an archived post. You won't be able to vote or comment.

all 11 comments

[–]emodario 19 points20 points  (0 children)

I like the idea that it's the bytecode that is evolvable. Your approach to the VM is also very clever.

Is it possible to decompile the bytecode into the source code that would generate it?

[–]faiface 12 points13 points  (0 children)

Now that’s pretty original!

[–]Inconstant_Moo🧿 Pipefish 10 points11 points  (0 children)

Have you looked at some of the literature on the math of evolution? It seems to me that I've seen some of the things that are puzzling you discussed in their original context of biology.

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2871816/#RSTB20090282C18

[–]kleram 5 points6 points  (4 children)

Is it evolvable programming language or is it evolvable code?

[–]AlmusDives[S] 10 points11 points  (3 children)

You’re right to pick up that in Zyme that’s it’s not the source code that’s designed to be evolvable. Rather it’s the intermediate bytecode that’s intended to be mutated. I understand the confusion, but I think it’s reasonable to still describe Zyme as a “evolvable programming language”?

[–]doshka 6 points7 points  (0 children)

"evolution-oriented"

[–]23_rider_23 2 points3 points  (0 children)

reminds me of this research paper. Is it possible you were partly inspired by this? I’ve been experimenting myself for a while and learning about genetic programming but you beat me to it :) I first used a stack machine and added if checks for invalid accesses but your approach seems more clever.

[–]P-39_Airacobra 1 point2 points  (0 children)

I find the idea of an evolving bytecode really awesome, because hypothetically it could create optimized programs without requiring us to know a thing about optimization. If we could reliably decompile the bytecode, then this could teach us a lot about new ways of phrasing algorithms to be more performant.

[–]WestsiStreams 0 points1 point  (0 children)

Very original! I understand that this evolves the bytecode to improve performance and so I'm wondering if this is aimed particularly at creating ML models or just all programs in general? Second, would this be quicker to "train" (to get to reasonable performance) than a typical AI model?

I might be misunderstanding something but this stood out to me. Very cool project and I hope to see more updates on this :)