This past Sunday, July 14th, 2013, the 7th meeting of the Recreational Computer Programming Group convened to discuss the latest goings on in local Recreational Computer Programming activities.

Patrick Wheeler presented a prototype reactive[1] web gui framework built in Haskell with the pipes-concurrency[2] package and complied to javascript with ghcjs[3][4], along with a small introduction to how the pipes package operates with programmatically generated diagrams.

Relevant links:

Christopher Loyd presented some code he'd written for an Arduino based project to capture temperature and humidity data and upload them via WiFi to a google docs spreadsheet. Unfortunately, the need for an encrypted https session to communicate with google turned out to be insurmountable for the Arduino platform. Several suggestions were floated for an alternate solution. In any case, it was interesting to see the code for communicating with a web site on the Arduino. Relevant links:

Chris Cauley presented a tool he built to help test the code behind web sites by rendering pages to images, and then automatically highlighting differences between such renderings. The idea is after making code changes, the tool can identify unintentional side effects in rendering automatically, and you can more quickly verify that the changes you intended to make are correct and that there are no unintended side effects.

Steve Cameron presented some code for modelling the power distribution systems within the imaginary spaceships inhabiting his game, Space Nerds In Space. The power system is modelled as a constant voltage limited current power supply connect to a network of parallel resistive loads. Current is distributed to the various systems according to the settings of simulated variable resistors. The result is a lively system that allows the players to distribute a finite amount of simulated power to the various systems in their simulated ship in a somewhat realistic, or at least an entertaining way.

Steve also presented "treegrower" which is a small python app which simulates graphically the growth of a tree. Each tree starts as a "cell". A cell has several attributes: position, size, parent cell, direction. On each "turn" of the simulation, a cell may become slightly larger (grow), generate a child cell facing in approximately the same direction as itself and adjacent to itself in whatever direction it is facing. If the cell is young enough, it may have some associated "leaves". These rules alone are enough to create things that look surprisingly tree-like.

Relevant links: