Looks interesting, is there any gameplay videos showing how the game is played? Trailer is kinda terrible, doesn't explain anything.
I don't know about any trailers or instructional videos, but I can give a "brief-ish" explanation, anyway.
Basically, the game is about taking 1 or more input lists (like say [1,2,3,4]), and -- through the use of programmable "units" which run in parallel -- transform that data according to some rule, and sending them through your system to 1 or more output lists.
So for example, one program has you take in a list of numbers, and double them, outputting the result. So if the list is [1,2,3,4], then as data "flows" through your units, it winds up being outputted as [2,3,6,8].
Because each unit can run in parallel, however, there are potentially many solutions to even the simplest puzzle. The game has no formal metric as of yet for "winning", but it can compare 3 important statistics (and even allows you to write 3 individual programs per puzzle to associate, I imagine, with these statistics): Cycle count, Node count, and Instruction count. Cycle count is how many 'ticks' it took the system to fully execute the program over time. Node count is how many "units" you needed to code up a solution. And instruction count is how many instructions you used to complete the program. The game nicely compares your lowest values in these three categories to people on your friends list so you can so how dum--er, how much work you have to do to put them in their place
Minimizing one of these categories often comes at a cost of another, or two. For example, minimizing cycle counts requires you to think in "parallel" with your units -- try to get the data to flow through your system faster, minimize the amount of operations you have to do, and spread the work evenly. If you can do something independently across many nodes, and then later "sync" the work up as you push it out to the output list, you're going to have a lower cycle count. In the process, you probably used more nodes (units) and more code to get the job done. Again, there's no formal metric for success really, so feel free to try to minimize on all three categories by writing 3 separate programs to minimize each.
The game looks on the surface to be terrifyingly complex. In reality, some of the problems can be tough when you try to minimize the work, but the actual "code" that you write tends to be usually simple if your goal is simply to come up with a working solution. The game uses a very simple reduced instruction set architecture which is pretty much limited to passing data through the units, syncing (blocking until input is available, and moving it somewhere), comparisons (>, <, =), and has 2 registers (places to store data/memory). Only one of which allows direct read/write operations. Also, there are ways to branch (using a variety of jump commands and labels). If none of that makes any sense, then it's probably going to take a little bit of time to get your bearings if you've never done any kind of assembly -- but it's far from impossible and, in my opinion, is a really cool way to learn it, and in a parallel programming environment too!
Having some familiarity with programming in general will help a *lot*. If you've never programmed before, it's going to be a tough game to play right now until there is better instructional videos or something, but it's not impossible.
I'm sure someone has already posted what the exact operations are in the game that you can do, so I won't go over them, but when you get in the game the nice thing is you can try them all out, and the game does an excellent job of actually showing you the data that is flowing through the system at any one point during execution -- this isn't just useful for debugging, it's useful for learning, too.
Anyone who has even a passing interest in the game should shell out the cash for it. It's cheap, fun, and a cool interactive way to learn basic assembly, parallel programming ideas, and -- oddly enough -- graph theory.