<?php
namespace structures\html;
class Script extends Element
{
   public function __construct($src=null)
   {
      parent::__construct("script");
      $this->add_attribute("src", $src);
   }
}
<?php
namespace structures\html;

class Head extends Element
{
   public function __construct(
      $title=null, $css_path=null, $description=null, $favicon_path=null,
      $thumbnail_path=null)
   {
      parent::__construct("head");
      $this->title = $title;
      $this->css_path = $css_path;
      $this->description = $description;
      $this->favicon_path = $favicon_path;
      $this->thumbnail_path = $thumbnail_path;
   }
   protected function build_content()
   {
      $markup = $this->build_title();
      $markup .= $this->build_css_link();
      $markup .= $this->build_description();
      $markup .= $this->build_favicon_link();
      $markup .= $this->build_thumbnail_link();
      return $markup;
   }
   protected function build_title()
   {
      $title = $this->title;
      if (!is_null($title))
      {
         return new Title($this->title);
      }
      return null;
   }
   protected function build_css_link()
   {
      $path = $this->css_path;
      if (!is_null($path))
      {
         return new Link("stylesheet", $path);
      }
      return null;
   }
   protected function build_description()
   {
      $description = $this->description;
      if (!is_null($description))
      {
         return new Meta($description, "description");
      }
      return null;
   }
   protected function build_favicon_link()
   {
      $path = $this->favicon_path;
      if (!is_null($path))
      {
         return new Link("shortcut icon", $path);
      }
      return null;
   }
   protected function build_thumbnail_link()
   {
      $path = $this->thumbnail_path;
      if (!is_null($path))
      {
         return new Link("image_src", $path);
      }
      return null;
   }
}
<?php
namespace structures\html;

class Table extends Element
{
   public function __construct($id=null, $class=null, $cellspacing=0)
   {
      parent::__construct("table", $id, $class);
      $this->add_attribute("cellspacing", $cellspacing);
   }
}
<?php
namespace structures\html;

class A extends Element
{
   public function __construct($href=null, $content=null, $id=null, $class=null)
   {
      parent::__construct("a", $id, $class);
      $this->add_attribute("href", $href);
      $this->content = $content;
   }

   protected function build_content()
   {
      $content = $this->content;
      if (is_null($content))
      {
         $content = $this->get_attribute("href");
      }
      return $content;
   }
}
<?php
namespace structures\html;

class HTML extends Element
{
   public function __construct(
      $title=null, $css_path=null, $description=null, $favicon_path=null,
      $thumbnail_path=null)
   {
      parent::__construct("html");
      $this->title = $this->get_default($title, "PAGE_TITLE");
      $this->css_path = $this->get_default($css_path, "CSS_PATH");
      $this->description = $description;
      $this->favicon_path = $favicon_path;
      $this->thumbnail_path = $thumbnail_path;
   }
   protected function build_content()
   {
      $markup = $this->build_head();
      $markup .= new Body($this->build_body());
      return $markup;
   }
   protected function build_head()
   {
      return new Head(
         $this->title, $this->css_path, $this->description,
         $this->favicon_path, $this->thumbnail_path);
   }
   protected function build_body()
   {
      return null;
   }
}
<?php
namespace structures\html;

class Td extends Element
{
   public function __construct(
      $content=null, $id=null, $class=null, $colspan=null, $rowspan=null)
   {
      parent::__construct("td", $id, $class);
      $this->content = $content;
      $this->add_attribute("colspan", $colspan);
      $this->add_attribute("rowspan", $rowspan);
   }
   protected function build_content()
   {
      return $this->content;
   }
}
<?php
namespace structures\html;

class IFrame extends Element
{
   public function __construct($id, $src, $width, $height)
   {
      parent::__construct("iframe", $id);
      $this->add_attribute("src", $src);
      $this->add_attribute("width", $width);
      $this->add_attribute("height", $height);
      $this->add_attribute("frameborder", "0");
   }
}
<?php
namespace structures\html;

class Body extends Element
{
   public function __construct($content)
   {
      parent::__construct("body");
      $this->content = $content;
   }
   protected function build_content()
   {
      return $this->content . $this->break_line();
   }
}
216.73.216.47
216.73.216.47
216.73.216.47
 
September 13, 2013

from array import array
from time import sleep

import pygame
from pygame.mixer import Sound, get_init, pre_init

class Note(Sound):

    def __init__(self, frequency, volume=.1):
        self.frequency = frequency
        Sound.__init__(self, self.build_samples())
        self.set_volume(volume)

    def build_samples(self):
        period = int(round(get_init()[0] / self.frequency))
        samples = array("h", [0] * period)
        amplitude = 2 ** (abs(get_init()[1]) - 1) - 1
        for time in xrange(period):
            if time < period / 2:
                samples[time] = amplitude
            else:
                samples[time] = -amplitude
        return samples

if __name__ == "__main__":
    pre_init(44100, -16, 1, 1024)
    pygame.init()
    Note(440).play(-1)
    sleep(5)

This program generates and plays a 440 Hz tone for 5 seconds. It can be extended to generate the spectrum of notes with a frequency table or the frequency formula. Because the rewards in Send are idealized ocean waves, they can also be represented as tones. Each level has a tone in its goal and a tone based on where the player's disc lands. Both play at the end of a level, sounding harmonic for a close shot and discordant for a near miss. The game can dynamically create these tones using the program as a basis.

I'm also building an algorithmically generated song: Silk Routes (Scissored). Here is an example of how it sounds so far.