![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Reading the xkcd forum has turned me on to the awesomesauce that is Manufactoria.

The concept is simple at the start. Your job is to build a machine to test robots to ensure that their "program" (expressed as a string of red and blue dots) meets certain characteristics. For instance, the layout above tests to see if a robot's program ends with two blue dots. The conveyor belts pushes robots (that start in the circle at the top) into a neighboring square in the direction indicated, and the branches eat the first character in the string and push the robot in the indicated direction (or in the direction of the gray arrow if the string is empty). In this case, you can see that if the input string ends with two blue dots, the robot will be pushed to the acceptance square in the bottom, otherwise it will fall on the floor and be destroyed.
So it starts off as a fun model for deterministic finite automata, and that's cool enough. But over the course of the 31 levels, the ability to print dots at the end of the input string and a greater range of colors is added, and then you've got an entire range of formal grammar problems available for challenges. And once you've solved a problem, you can go back and tinker with it to make it smaller or faster as you wish. Or you can keep going through some pretty dense challenges that get hard to fit on the factory floor, much less read. That above example was maybe level 10 or 11 of the set, and let's call this level 29:

Still have two more challenges to figure out myself, but it's a great time if this is the sort of thing that you're into.

The concept is simple at the start. Your job is to build a machine to test robots to ensure that their "program" (expressed as a string of red and blue dots) meets certain characteristics. For instance, the layout above tests to see if a robot's program ends with two blue dots. The conveyor belts pushes robots (that start in the circle at the top) into a neighboring square in the direction indicated, and the branches eat the first character in the string and push the robot in the indicated direction (or in the direction of the gray arrow if the string is empty). In this case, you can see that if the input string ends with two blue dots, the robot will be pushed to the acceptance square in the bottom, otherwise it will fall on the floor and be destroyed.
So it starts off as a fun model for deterministic finite automata, and that's cool enough. But over the course of the 31 levels, the ability to print dots at the end of the input string and a greater range of colors is added, and then you've got an entire range of formal grammar problems available for challenges. And once you've solved a problem, you can go back and tinker with it to make it smaller or faster as you wish. Or you can keep going through some pretty dense challenges that get hard to fit on the factory floor, much less read. That above example was maybe level 10 or 11 of the set, and let's call this level 29:

Still have two more challenges to figure out myself, but it's a great time if this is the sort of thing that you're into.
no subject
Date: 2010-06-07 07:11 pm (UTC)no subject
Date: 2010-06-10 08:44 am (UTC)no subject
Date: 2010-06-10 10:59 pm (UTC)If you check out the credits page, it will strongly suggest Zachtronics Industries which is attempting to introduce transistor-based circuit design to the Great Unwashed. I seem to remain unwashed as of this moment, but it is intriguing.
no subject
Date: 2010-06-10 11:00 pm (UTC)