6 ms·
Show HN: Zyme – An Evolvable Programming Language
Zyme is an esoteric language for genetic programming: creating computer programs by means of natural selection.
- robthebrew 2y ago"While I've observed bloat in Zyme, I don’t think this is driving the increase in mutation resistance and survival rate" This is evident in the human genome.
- huhtenberg 2y agoCompletely unrelated (and apologies to the OP), Zyme is also a name of a winery near Verona in Italy that makes really unusual, complex and very tasty reds. Beautiful facilities as well. If you are ever in the region, give it a visit - https://www.zyme.it/en/ https://www.zyme.it/en/
- xiaodai 2y agointeresting idea to say the least.
- shortrounddev2 2y agoIs it named after the drug in Deus Ex
- almusdives 2y agoSadly not. When I was developing Zyme, I was thinking a lot about the molecular components of a cell and how one might translate them into a virtual machine. I was particularly inspired by enZYMEs.
- shortrounddev2 2y agoI just realized that that's what the oeigin of the deus ex drug must be as well lol
- g-b-r 2y agoZyme is an ancient Greek word that means leaven, a lot of organizations and companies use it
- Tabular-Iceberg 2y agoI thought maybe it was related to Gabriel Syme. Like how similarly sounding letters are changed to make words look more kool.
- tpoacher 2y agoThat was my first thought too, hahah.
- muffwiggler 2y ago[dead]
- haxiomic 2y agoI love this idea, it's thought provoking and I want to play Is there a repository of examples or experiments built with Zyme? Curious to see what has been explored so far I think it could be fun to focus on visual experiments; shader-like programs as a way to easily explore different outputs
- almusdives 2y agoThanks! Since the language is still in its early stages of being able to evolve programs, I don't have many examples to share yet. I didn’t realize when I began but developing the language itself was just the beginning - I hadn't anticipated how much work would still be needed on tuning, development tools, and implementing the genetic programming framework before getting concrete results.
- shahdash 2y agowow this is so creative!
- Vaslo 2y agoDoing => to set variables seems like extra work from just equals. Hopefully it’s kind of optional like it is in R.
- null08 2y agoInteresting. I haven't seen much in this space since Lee Spector's "push" more than 20 years ago (http://faculty.hampshire.edu/lspector/push.html http://faculty.hampshire.edu/lspector/push.html). I did see a mention of Push in the FAQ but it would be very interesting to compare this in detail. If I get it correctly Zyme programs are evolved on the bytecode level whereas Push's stack architecture is designed to be evolvable directly at the syntactic level? A head-to-head comparison / benchmark would be super interesting.
- conartist6 2y agoHampshire represent! I'm also quite interested in this space.
- airstrike 2y agoThis is really, really cool. Cue the replicators.
- deleted 2y ago[deleted]
- CodesInChaos 2y agoAdding a toggle between bytecode and (dis)assembly would make help with visualizing what kind of effect mutation has.
- almusdives 2y agoYou're right - a disassembler would be incredibly valuable; and while I haven’t gotten around to implementing one yet, it’s definitely on my radar. But even the idea of even having an assembler is exciting because it suggests the output programs could be interpretable, enabling us to identify the underlying algorithms that (hopefully) emerge through evolution.
- pnathan 2y ago15 or so years ago now - before I worked professionally really - I worked with Common Lisp to create a little toy tool to build, essentially, ASTs and evolve them to achieve a given fitness function. It was a heavily studied topic in the 1995-2005 timeframe at my alma mater. I just uploaded it ( https://github.com/pnathan/z-system https://github.com/pnathan/z-system ) as an amusing bit. I'd be curious if the OP has looked at the literature on evolutionary programs (not evo algos, but programs).
- abcd_f 2y agoHa, can I ask who the involved prof/s was/were? I spent some time at your Uni in the early 90s. From what I remember there wasn't a whiff of Lisp on the curriculum.
- pnathan 2y agoHeckendorn and Soule were the key profs in the research in the area. One other maybe?. Soule in particular. In 04 I was doing some undergrad research around training neural networks with particle swarms. I wandered off to do this Lisp on my own, inspired by the code-is-data concept of Lisp. This work is strictly toy, to self demonstrate the possibility. Wouldn't mind revisiting it sometime to bring in the top of the academic art. But I am not affiliated with a U, so publishing would be a challenge.
- abcd_f 2y agoThanks. Both joined after my time it seems.
- UncleOxidant 2y agoIs source available for zyme? I don't see anything on that page about how one might download and install their compiler.
- deleted 2y ago[deleted]