-
Constraint Kinds for GHC
I recently implemented a powerful new extension to GHC HEAD called
ConstraintKinds
. This (Literate Haskell) post will explain what this means, and how we can exploit it to do some cool stuff. -
The Sad State of Symbol Aliases
This point continues my quest to condense and write down some of the folklore surrounding assemblers & linkers. In this case, I recently came across a situation where it would be useful to be able to generate an object file that contained an alias for a symbol defined elsewhere. For example, I want an object file to export a symbol
foo
that aliasesbar
, such that when any use site offoo
is linked against the object file that use site then behaves exactly as if it had referencedbar
instead. -
Everything You Never Wanted To Know About DLLs
I’ve recently had cause to investigate how dynamic linking is implemented on Windows. This post is basically a brain dump of everything I’ve learnt on the issue. This is mostly for my future reference, but I hope it will be useful to others too as I’m going to bring together lots of information you would otherwise have to hunt around for.
-
Fixing "files could not be moved" error in Boot Camp Assistant
Recently I’ve been trying to install Windows on an OS X laptop by using Boot Camp. However, every time the Boot Camp Assistant would tell me that “some files could not be moved” during the creation of the Windows partition. The most commonly suggested solution is a total reinstall of OS X, which I was absolutely not willing to perform.
-
Security implications of PEP 383
I’ve been looking into improving GHC’s support for non-ASCII text, and my investigations have lead to me to PEP 383.