Skip to main content

A simple illustration of mutation aiding evolution

Project description

Evolve Words


Many moons ago, back in 2008, while in a debate on an atheist-oriented phpBB site (as was the fashion back then), I ended up writing a couple of scripts, in ruby, to illustrate a point about how mutation and selection can, given enough time, result in something with the appearance of design.

The code was far from a mic-drop body of evidence (it wasn't meant to be), I think it did an okay job of showing how nothing more than just mutating something and selecting for the "fitter" options can get you somewhere meaningful given enough time.

No matter, either you get the illustration or you don't. That's not important.

Fast forward 15 years and I was thinking that a Textual version of the code might be fun.

Evolve Words

This is a version of selection2. Turns out it is fun!


If you want to play with this, the best method is going to be to install with pipx:

$ pipx install evolve-words

then simply run evolve-words.


While this code should work fine on any operating system, it's really coded to work on a system that provides one of the two following files:

  • /usr/dict/words
  • /usr/share/dict/words

That does, of course, mean it's unlikely to work fine on Windows given neither of them will be there. At some point in the very near future I'll add support for loading words from a file whose name is passed on the command line, or something similar.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

evolve_words-0.2.0-py3-none-any.whl (7.5 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page