Jeremy Ruten

Balloon Sorcery in the Heavens

A bright sunny day. The grass is green, the sky is blue. Not a cloud or a peanut in the sky.

10

An enormous number 10, constructed from stainless steel, appears high in the sky and immediately begins to fall down to the ground. It tumbles and spins in the air, and you can almost see the two digits hugging each other in fright. They hit the ground, bounce a couple times, and come to rest on their backs. They are singed black all over from the air resistance. A mysterious red garbage truck with arms rolls by and tosses the two battered digits into the back and drives off.

n = 10

Another number 10 materializes above, but this time a bright red balloon appears with it, with a string tied from the balloon to the 10. The letter n is written on the center of the balloon. It is presumably a helium sort of balloon, as it just floats in place, with the 10 suspended below. Back on earth, a young lad points up at the sky and informs the public of the sky party that’s going on above.

a = 1

Another balloon-number pair appears, this time a balloon named a holding a number 1.

a + n

A pelican named + (as can be inferred from the “+” sign spraypainted on the portside of its beak) flies onto the scene. It glides beneath a and lets a copy of 1 fall into its enormous beak. It then does the same with the 10 under n. Finally, it spits out a new number 11 into the sky, which proceeds to fall right back down to the ground. Once again, the garbage truck rolls by and picks up the poor reject.

b = a + n

The same pelican returns, and once again puts the two numbers into its beak and spits out a brand new 11. This time, however, the 11 is attached to a balloon named b. There are now three balloons and three numbers floating in the sky in hypnotic harmony.

a = b

Balloon a immediately unattaches itself from number 1 and mercilessly lets it plummet to the ground, where it squashes a bee hive and is declared a hero by the nearby children. The digit is taken away once again by the garbage truck before the kids have a chance to snap a photo for the local Gazette. Balloon a floats alongside balloon b and attaches its string to b’s 11. So now two balloons are attached to 11.

b = 2

Balloon b unattaches itself from 11, which is still attached to balloon a so it doesn’t fall. A new number 2 joins the party and is attached to balloon b.

a + b * n

A pelican + flies in and grabs a copy of balloon a’s 11, then waits patiently as another pelican * flies in and takes balloon b’s 2 and balloon n’s 10 and spits out a 20. The 20 glides in an arch right into pelican +’s mouth, who readily spits out a 31 which falls to the ground and is picked up by the tireless garbage truck. All that pelican labour for nothing.

a = b = n = nil

The three numbers in the sky dangling from their respective balloons are unattached and fall to the ground in unison, and are collected by the garbage truck. The three balloons are left in the sky, attached to nothing.

exit

Pop! Pop! Pop!

(Really, somebody should implement this REPL. Maybe make it into a game where you have to drop the right objects from the balloons into the right places, as in the bee hive squashing example, teaching assignment-by-reference and garbage collection at the same time. Or at least make a movie where a genius kid figures out how to conjure and control physical objects using Ruby, his resulting reign over the world getting cut short at the end by the garbage collection of his own flailing body.)