Author Archives: Brent

Workshop on Functional Art, Music, Modeling and Design

I’m helping organize a new workshop, FARM, to be held in Boston this September (right after ICFP). Many readers of this blog may have already seen the announcement, but I thought it worth saying a bit more about it here, … Continue reading

Posted in meta | Tagged , , , , , , , , | 2 Comments

Monad transformers: a cautionary tale

When writing the code in my previous post, I wanted to have a monad which combined the ability to generate random numbers with the ability to fail. Naturally, I decided to use RandT Maybe. But when I tried to write … Continue reading

Posted in haskell | Tagged , , , | Leave a comment

Random binary trees with a size-limited critical Boltzmann sampler

Today I’d like to talk about generating random trees. First, some imports and such (this post is literate Haskell). > {-# LANGUAGE GeneralizedNewtypeDeriving #-} > > module BoltzmannTrees where > > import Control.Applicative > import Control.Arrow ((&&&)) > import Control.Lens … Continue reading

Posted in haskell, math, combinatorics, species | Tagged , , , , , | 7 Comments

Beeminding for fun and profit

I’ve been using Beeminder (which I’ve mentioned once before) for a little over six months now. The verdict? Beeminder has changed my life. That sounds dramatic, but I’m not kidding. I am far more productive than I’ve ever been. I’m … Continue reading

Posted in grad school, meta | Tagged , , , | 14 Comments

Introducing diagrams-haddock

I am quite pleased to announce the release of diagrams-haddock, a tool enabling you to easily include programmatically generated diagrams in your Haddock documentation. Why might you want to do this? “A picture is worth a thousand words”—in many instances … Continue reading

Posted in diagrams, haskell, writing | Tagged , , , | 3 Comments

BlogLiterately 0.6

I’m very proud to announce the release of BlogLiterately version 0.6, a tool for formatting and uploading blog posts, including syntax highlighting, generation of ghci sessions, LaTeX support, automatic image uploading, and more. tl;dr: Instead of cumbersomely specifying all options … Continue reading

Posted in haskell, writing | Tagged , , | Leave a comment

The Dawn of Software Engineering

The Dawn of Software Engineering: From Turing to DijkstraEdgar G. Daylight Edgar sent me a review copy of his book a while back—it made for quite interesting reading and gave me new perspective on the historical origins of my field. … Continue reading

Posted in haskell | 3 Comments

The algebra of species: primitives

[This is the fifth in a series of posts about combinatorial species. Previous posts: And now, back to your regularly scheduled combinatorial species; Decomposing data structures; Combinatorial species definition, Species definition clarification and exercises.] Recall that a species is a … Continue reading

Posted in math, species | Tagged , , , , , , | 5 Comments

Diagrams 0.6

I am pleased to announce the release of version 0.6 of diagrams, a full-featured framework and embedded domain-specific language for declarative drawing. Check out the gallery for examples of what it can do! Highlights of this release include: Diagrams now … Continue reading

Posted in diagrams, haskell, projects | Tagged , , , | 6 Comments

Species definition clarification and exercises

[This is the fourth in a series of posts about combinatorial species. Previous posts: And now, back to your regularly scheduled combinatorial species; Decomposing data structures; Combinatorial species definition.] In my previous post I neglected to mention something quite crucial, … Continue reading

Posted in math, species | Tagged , , , | 2 Comments