Natural language black boxes
What we should learn from their existence
Chris blogs mostly about Haskell and NixOS.
What we should learn from their existence
How to end the reign
Breakdown of the successful tech guy
A definition for consideration
There's got to be more to life than touching grass.
Nix version pinning
Not so hard after all
Higher-kinded products
Posing a difficulty with composition
A simple winter clothes drying solution
How publishing packages makes programming tractable
Thoughts about where the writing should go
How to control your dogs
The files are in the computer. It's so simple.
or: How I Learned To Stop Using Dish Soap and Love the Iron
Keep it how you like.
The burden of things.
An observation about a typical application's dependency graph.
Under a totalitarian regime, one avoids being partial.
A quick overview of the purpose of the PATH variable.
Places where levity does not fit.
Linked lists are prevalent in functional programming, but they don't take the place of other kinds of lists.
How I prefer to design compositionally, and why I dislike TDD.
A toy example showing a Java-to-Haskell translation in which an interface in Java is rewritten as a record in Haskell.
An example using the (.=) operator from microlens-mtl to write Haskell code that resembles reassignment of mutable variables.
A Haskell library for calculations on text file positions.
When bottoms are tagged, we may view bottom more inclusively. This could reasonably include null.
Leak is one of those technical words we often forget to explain.
Everybody s favorite applicatives, and their semigroups.
What Nix is for, and how it can help you as a Haskell developer.
Solving that water-puddles problem, using as many monoids as possible.
Contributing to Haskell isn t scary - How to submit a PR to GHC using Phabricator.
How to start a new NixOS droplet on Digital Ocean using nixos-infect.
A minimal guide to getting started with the Nix package manager on any Linux or OSX machine.
I just installed NixOS on my laptop. This is a summary of my experience.
There are a handful of mistakes that most people (who aren t coming from a Haskell background) tend to fall into.
Dynamic typing, the belief that you can t explain to a computer why your code works, but you can keep track of it all in your head.
I recently switched a Scala project s build from SBT to Gradle and was disappointed to find that Gradle has no support for launching the Scala REPL. My workaround:
The most terse operator in any language is adjacency, or in other words, no operator at all.
Sometimes I see a Java question, write myself a Haskell solution, then sadly read over the thread of people who will never know about it.
alias such=git alias very=git alias wow='git status'
2005 2013
Why are we at the mercy of languages core libraries?
// Let s talk about programs. type P
This project for CS 6491 (computer graphics) uses Scala with JOGL to generate a tree over approximately half of the faces of a triangle manifold using a laced ring construction, and then render an animation resembling a vine that grows upward along paths defined by the tree.
I have been cursing at Java a lot lately. Over this past week, it s because I ve been experiencing inexplicable compilation failures.
Random selection from a stream in constant space.
The big question everyone had in middle-to-high school mathematics classes was When am I ever going to use this?
As I was leaving for AVS this morning, I happened upon a take-home test for Graph Theory which I should have done this weekend
It occurred to me that this OS Design course has put me past a certain point of no return in life.