-
Servant: REST APIs as types
In recent months, have been slowly working my way through Brian P. Hogan’s 57 Exercises for Programmers in Haskell in my lunch breaks and on bus journeys. You can see the github repo if you’re interested.As I work my way through the exercises, I have been trying to use idiomatic Hask …
- On:
-
The foundational questions that inspire computer languages
I came across a very amusing image the other day, dealing with the questions that various popular programming languages seek to answer. There is a nice thread on reddit with some extra suggestions to include in the list too.Here is a transcription.Python: What if everything was a dict?Java: …
- On:
-
Why sum and product types?
When reasoning about functional types it sometimes helps to take a step away from the compiler and delvelop some informal intuitions about why things work the way that they do.When I read about algebraic data types they seemed rather complex notions. Algebraic data types, I discovered from wikiped …
- On:
-
Seven More Languages: miniKanren day two
Day two of MiniKanren starts by covering matching with matche which is a macro that allows you to do common matching operations with less boilerplate.But of course once you start down that route you are going to want to be able to lose the boilerplate from your whole function definition. That̵ …
- On:
-
Seven More Languages: miniKanren day one
My last brush with logic programming was when I was working through the original Seven Languages in Seven Weeks back in 2011 and learning a little bit of Prolog. That was an eye opening experience — letting the computer do the work just didn’t feel like any coding I had done before.The …
- On:
-
Seven More Languages: Julia day three
The final day of Julia is a lot more challenging than the first 2 — consisting of a larger example of some image processing and a little bit about macros along with some wrap up material and some challenging exercises.Throughout the whole thing Julia struck me as a very usable language. Intu …
- On:
-
Seven More Languages: Julia day two
Day 2 of Julia takes a wander through control flow, types, concurrency and multiple dispatch. Multiple dispatch is something I have not played with much before, and it seems very useful indeed. It works like overridden methods in OOP. But rather than picking which function to call based on just the …
- On:
-
Seven More Languages: Julia Day One
Today, I began working on learning a little bit of Julia. On the Julia website, the language is described as an high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. Which sounds pretty nice …
- On:
-
Seven More Languages: Elixir Day Three (back on the wagon)
Oh dear. After telling myself I wouldn’t I somehow managed to lunch out my Seven Languages in Seven Weeks oddyssey for 6 months. I had been most of the way through the Elixir section and then got distracted by a shiny object or something.Well, today I am back on the wagon and the way I am go …
- On:
-
Seven More Languages: Elixir Day Two
Today’s installment was long and occasionaly annoying. Mostly because I felt that what I wanted to say in Elixir was on the tip of my tongue. I just didn’t quite yet have the language to say it. An occupational hazard when picking up new languages. We first looked at soome of the Elixi …
- On:
-
Muffet: A Perl Web Spider
Muffet is a web spider written in Perl and Moose that I've put up on github, under GPL.
The problem that I was trying to solve was to spider …
- On: