-
How to build 32/64 bit fat (universal) binaries
The OS X version of the Glasgow Haskell Compiler compiles Haskell into 32-bit code. Unfortunately, this means that if you are on a system where it is the default for libraries to be built in 64-bit mode, you tend to get errors when linking Haskell code telling you that you are trying to link 32-bit code against 64-bit code.
-
Solving GHC iconv problems on OS X 10.6
A problem that has plagued my GHC installation for a while is that whenever I tried to install any non-trivial package I would get a horrible link error like this:
-
The case of the mysterious "thread blocked indefinitely in an MVar operation" exception
I recently tracked down the cause of the persistent “thread blocked indefinitely in an MVar operation” exceptions I was getting from the GHC runtime when I used my parallel-io library. There doesn’t seem to be much information about this exception on the web, so I’m documenting my experiences here to help those unfortunate souls that come across it.
-
Interpreting GHC cost centre stacks
A little-known feature of GHC is the ability to run a program (that has been compiled with profiling) with the
+RTS -xc
option. Now, every time an exception is raised a stack trace will be dumped to stderr. This is the only way get stack traces for your Haskell code currently. Unfortunately: -
Blogging is hard, let's go tweeting!
I seem to have been fairly consistent at using my Twitter account, so look there if you want information about my latest projects (there are lots of them!) that is updated more frequently than this blog.