Author Archives: Brent

Generating plane tilings with diagrams

I’ve finally set up a diagrams-contrib package to serve as a home for user contributions to the diagrams project—generation of specialized diagrams, fun or instructive examples, half-baked ideas, stuff which is not sufficiently polished or general to go in the … Continue reading

Posted in diagrams, haskell, math, projects | Tagged , , | 1 Comment

Wanted GHC feature: warn about unused constraints

Consider the following function: foo :: (Show a, Ord a) => a -> a -> String foo x y = show x ++ show y Currently (as of GHC 7.2.1) when compiling this code with -Wall, no warnings are generated. … Continue reading

Posted in haskell | Tagged , , , | 5 Comments

More counting lambda terms

Yesterday someone submitted a comment to an old post of mine about counting linear lambda terms, asking the following question: I am interested in a similar problem: given a natural number N, what is the number of different symply-typed closed … Continue reading

Posted in haskell | 5 Comments

Announcing diagrams-0.4

I am pleased to announce the release of version 0.4 of diagrams, a full-featured framework and embedded domain-specific language for declarative drawing. The last announcement was of the 0.1 release; there have been quite a few changes and improvements since … Continue reading

Posted in haskell, projects | Tagged , , , | 2 Comments

Effective parse tree support for the working semanticist

If, like me, you spend large amounts of time designing, discussing, and proving things about programming languages and formal calculi, chances are you have used Ott (and if you do, but you haven’t, you are really missing out). You write … Continue reading

Posted in haskell, projects | Tagged , , , , , | 2 Comments

diagrams repos now mirrored on github!

I was quite excited when I learned that Owen Stephens was working on a two-way darcs-git bridge for his Google Summer of Code project. You see, I’m one of those holdouts who, despite acknowledging that github is pretty cool and … Continue reading

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

Math.Tau

I have just uploaded a new package to Hackage which defines the constant . Now if you wish to use in your program you can just cabal install tau and then import Math.Tau (tau), and be assured that you are … Continue reading

Posted in haskell | Tagged , , | 4 Comments

Unbound now supports “set” binders and GADTs

I have just uploaded version 0.3 of the Unbound library (and version 0.5 of RepLib). This version adds support for two major new features: The new permbind and setbind functions create binders that are alpha-equivalent “up to permutation”. For example, … Continue reading

Posted in haskell, projects | Leave a comment

Idempotent Template Haskell

Yesterday I was looking for a way to have some Template Haskell code generate a definition for a certain identifier if and only if such a definition did not already exist. Essentially I want to be able to call the … Continue reading

Posted in haskell | Tagged , , , | 2 Comments

Hac phi 3!

Hac phi 3 is in full swing now: almost 30 people showed up for the first day of hacking yesterday and more are expected today! I’ve posted a few pictures here — more to come.

Posted in haskell | Leave a comment