<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Stephan Boyer</title>
  <subtitle>Computer science, software engineering, math, and music.</subtitle>
  <link href="http://www.stephanboyer.com/atom" rel="self" />
  <link href="http://www.stephanboyer.com/" />
  <id>http://www.stephanboyer.com/</id>
  <updated>2013-05-14T18:37:12+00:00</updated>
  <entry>
    <title>Never Seek to Tell Thy Love</title>
    <link href="http://www.stephanboyer.com/post/47/never-seek-to-tell-thy-love" />
    <id>http://www.stephanboyer.com/post/47/never-seek-to-tell-thy-love</id>
    <updated>2013-05-16T01:38:39+00:00</updated>
    <summary>I wrote a ballad for tenor voice and piano featuring lyrics from William Blake's poem "Never Seek to Tell Thy Love." From a music theoretic perspective,...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>I Wrote Some "Classical" Music</title>
    <link href="http://www.stephanboyer.com/post/42/i-wrote-some-classical-music" />
    <id>http://www.stephanboyer.com/post/42/i-wrote-some-classical-music</id>
    <updated>2013-05-13T01:47:34+00:00</updated>
    <summary>I'm taking a music theory/composition class at MIT called Writing in Tonal Forms. One of our class projects was to write a minuet and trio for string...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Fluid and Responsive Grid Layouts</title>
    <link href="http://www.stephanboyer.com/post/41/fluid-and-responsive-grid-layouts" />
    <id>http://www.stephanboyer.com/post/41/fluid-and-responsive-grid-layouts</id>
    <updated>2013-05-09T12:00:00+00:00</updated>
    <summary>Fluid and responsive layouts are becoming more commonplace in modern web designs. It's important that web applications are usable on all kinds of...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Covariance and Contravariance</title>
    <link href="http://www.stephanboyer.com/post/39/covariance-and-contravariance" />
    <id>http://www.stephanboyer.com/post/39/covariance-and-contravariance</id>
    <updated>2013-05-06T12:00:00+00:00</updated>
    <summary>Subtyping can be a complicated topic, and it's a nightmare for the programming language designer. This is due in part to confusion about a pair of...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Counting to a Billion</title>
    <link href="http://www.stephanboyer.com/post/38/counting-to-a-billion" />
    <id>http://www.stephanboyer.com/post/38/counting-to-a-billion</id>
    <updated>2013-05-05T12:00:00+00:00</updated>
    <summary>I sometimes use Python for quick-and-dirty computations. Its "batteries-included" standard library makes it convenient for all kinds of tasks. Python...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>The MIT Centrifugues Fall Concert 2013</title>
    <link href="http://www.stephanboyer.com/post/36/the-mit-centrifugues-fall-concert-2013" />
    <id>http://www.stephanboyer.com/post/36/the-mit-centrifugues-fall-concert-2013</id>
    <updated>2013-04-29T12:00:00+00:00</updated>
    <summary>In my last post, I announced that I had started a new bastard pop _a cappella_ group at MIT called the Centrifugues. Last night we had our first annual...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>The Debut of the MIT Centrifugues</title>
    <link href="http://www.stephanboyer.com/post/33/the-debut-of-the-mit-centrifugues" />
    <id>http://www.stephanboyer.com/post/33/the-debut-of-the-mit-centrifugues</id>
    <updated>2013-04-15T12:00:00+00:00</updated>
    <summary>For my last semester as an MIT undergraduate, I started a new bastard pop _a cappella_ group at MIT called the Centrifugues. After a semester of hard...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Piano Dueling with Sumin</title>
    <link href="http://www.stephanboyer.com/post/32/piano-dueling-with-sumin" />
    <id>http://www.stephanboyer.com/post/32/piano-dueling-with-sumin</id>
    <updated>2013-04-14T12:00:00+00:00</updated>
    <summary>Sumin and I had a "call and response" piano improv battle today.</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Real-time Ray Tracing in JavaScript</title>
    <link href="http://www.stephanboyer.com/post/30/real-time-ray-tracing-in-javascript" />
    <id>http://www.stephanboyer.com/post/30/real-time-ray-tracing-in-javascript</id>
    <updated>2013-03-30T12:00:00+00:00</updated>
    <summary>A ray tracer^1 is a program that renders a 3-D scene by firing virtual rays from the camera and computing their intersections with the objects in the...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>This Blog is Open Source!</title>
    <link href="http://www.stephanboyer.com/post/29/this-blog-is-open-source" />
    <id>http://www.stephanboyer.com/post/29/this-blog-is-open-source</id>
    <updated>2013-03-25T12:00:00+00:00</updated>
    <summary>The software that powers this blog is available on GitHub under the permissive MIT license. Of course, you are welcome to use it to serve your own...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Ave Verum Corpus</title>
    <link href="http://www.stephanboyer.com/post/28/ave-verum-corpus" />
    <id>http://www.stephanboyer.com/post/28/ave-verum-corpus</id>
    <updated>2013-03-25T12:00:00+00:00</updated>
    <summary>Singing some Mozart with Sumin over spring vacation!</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>3-Way Text Merging Algorithm</title>
    <link href="http://www.stephanboyer.com/post/26/3-way-text-merging-algorithm" />
    <id>http://www.stephanboyer.com/post/26/3-way-text-merging-algorithm</id>
    <updated>2013-02-06T12:00:00+00:00</updated>
    <summary>For a class called 6.033 (Computer Systems Engineering) at MIT, I was required to design a collaborative, distributed text editor. It's supposed to work...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>My Spring 2013 Schedule</title>
    <link href="http://www.stephanboyer.com/post/25/my-spring-2013-schedule" />
    <id>http://www.stephanboyer.com/post/25/my-spring-2013-schedule</id>
    <updated>2013-02-04T12:00:00+00:00</updated>
    <summary>This is my final undergraduate semester at MIT. Here's my schedule this term! 1. 6.UAR Super UROP Academic Component 2. Advanced Undergraduate...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Highest Note on a Guitar</title>
    <link href="http://www.stephanboyer.com/post/24/highest-note-on-a-guitar" />
    <id>http://www.stephanboyer.com/post/24/highest-note-on-a-guitar</id>
    <updated>2012-12-29T12:00:00+00:00</updated>
    <summary>I just bought a new guitar, and I asked myself: **what is the highest note you can play on a guitar (in standard tuning?** When plucked, the high E...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Unicode Library</title>
    <link href="http://www.stephanboyer.com/post/23/unicode-library" />
    <id>http://www.stephanboyer.com/post/23/unicode-library</id>
    <updated>2012-10-30T12:00:00+00:00</updated>
    <summary>I wrote a lightweight, low-level ASCII/Unicode processing library in C++ out of dissatisfaction with existing solutions. Get it here!</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Deterministic and Nondeterministic Finite Automata</title>
    <link href="http://www.stephanboyer.com/post/22/deterministic-and-nondeterministic-finite-automata" />
    <id>http://www.stephanboyer.com/post/22/deterministic-and-nondeterministic-finite-automata</id>
    <updated>2012-10-28T12:00:00+00:00</updated>
    <summary>Anyone who has taken a class on computability theory, compilers, or finite automata knows that regular expressions can be parsed in linear time by...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>My Fall 2012 Schedule</title>
    <link href="http://www.stephanboyer.com/post/20/my-fall-2012-schedule" />
    <id>http://www.stephanboyer.com/post/20/my-fall-2012-schedule</id>
    <updated>2012-09-06T12:00:00+00:00</updated>
    <summary>I'm a senior at MIT. Here's my schedule this term! 1. 6.UAR Super UROP Academic Component 2. Advanced Undergraduate Research Program 3. 6.170...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Algebraic Data Types</title>
    <link href="http://www.stephanboyer.com/post/18/algebraic-data-types" />
    <id>http://www.stephanboyer.com/post/18/algebraic-data-types</id>
    <updated>2012-08-21T12:00:00+00:00</updated>
    <summary>A type system starts with some primitive types. Some examples include: - `Int` (the type of integers, perhaps limited to some range) - `Real` (the...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>My Electric Unicycle</title>
    <link href="http://www.stephanboyer.com/post/17/my-electric-unicycle" />
    <id>http://www.stephanboyer.com/post/17/my-electric-unicycle</id>
    <updated>2012-08-21T12:00:00+00:00</updated>
    <summary>I recently built a partially self-balancing electric unicycle called "Bullet," featuring: - A custom MIG-welded steel chassis - A 450 Watt electric...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Monads, Part 2: A Data Structure for Computation</title>
    <link href="http://www.stephanboyer.com/post/10/monads-part-2-a-data-structure-for-computation" />
    <id>http://www.stephanboyer.com/post/10/monads-part-2-a-data-structure-for-computation</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>In the last post, we learned about monads and how to use them to implement exception handling, vector operations, and debug output. To refresh your...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Monads, Part 1: A Design Pattern</title>
    <link href="http://www.stephanboyer.com/post/9/monads-part-1-a-design-pattern" />
    <id>http://www.stephanboyer.com/post/9/monads-part-1-a-design-pattern</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>In the last two posts, we saw how we can describe side effects in a pure functional programming language with a combination of universe tokens (passing...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Uniqueness Types</title>
    <link href="http://www.stephanboyer.com/post/8/uniqueness-types" />
    <id>http://www.stephanboyer.com/post/8/uniqueness-types</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>Last time we saw how we can, in practice, achieve side effects in a functional programming language without sacrificing purity. It seems like a paradox...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Side Effects and Functional Programming</title>
    <link href="http://www.stephanboyer.com/post/7/side-effects-and-functional-programming" />
    <id>http://www.stephanboyer.com/post/7/side-effects-and-functional-programming</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>Today we'll examine why functional languages have a reputation of being a mere novelty of academia, while imperative languages have dominated the...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>The Great War</title>
    <link href="http://www.stephanboyer.com/post/6/the-great-war" />
    <id>http://www.stephanboyer.com/post/6/the-great-war</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>I'd like to make the content of this blog as accessible as possible to the general computer science community. To start off, I think it would be a good...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
  <entry>
    <title>Welcome</title>
    <link href="http://www.stephanboyer.com/post/5/welcome" />
    <id>http://www.stephanboyer.com/post/5/welcome</id>
    <updated>2012-07-09T12:00:00+00:00</updated>
    <summary>I recently became obsessed with declarative programming, and functional programming in particular. Languages such as Haskell, Erlang, Miranda, and...</summary>
    <author>
      <name>Stephan Boyer</name>
      <email>boyers@mit.edu</email>
    </author>
  </entry>
</feed>
