Neil Mitchell's Blog (Haskell etc)

Monday, May 20, 2019

Hoogle XSS Vulnerability

›
Summary: Hoogle 5.0.17.6 and below have an XSS vulnerability, fixed in later versions. On Friday afternoon I got an email from Alexander Gug...
3 comments:
Tuesday, May 14, 2019

Shake with Applicative Parallelism

›
Summary: Shake now does that Applicative trick from Haxl. In Shake 0.17.9 and below, need xs >> need ys builds xs in parallel, then ...
Monday, April 29, 2019

foldr under the hood

›
Summary: The foldr function seems simple, but is actually very complex, with lots of layers. This post dives through the layers. The foldr ...
3 comments:
Tuesday, April 16, 2019

Code Statistics and Measuring Contributions

›
Summary: The only way to understand a code base is to ask someone who works on it. This weekend a relative asked me how can we tell who wrot...
1 comment:
Sunday, April 07, 2019

Code Review: Approve with Suggestions

›
Summary: Code review is not a yes/no decision - mostly I say yes with suggestions. As I wrote previously , I didn't used to be a fan of ...
1 comment:
Monday, March 18, 2019

GHC Rebuild Times - Shake profiling

›
Summary: GHC rebuild times are slow. Using the Shake profiler and Hadrian we can find out why. I just checked out GHC , and using Hadrian (...
10 comments:
Sunday, February 17, 2019

Quadratic "deriving Generic" Compile Times

›
Summary: For large data types, deriving Generic can take a long time to compile. I was building GHC using Hadrian , and part of that proce...
Tuesday, February 05, 2019

Announcing ghc-lib

›
On behalf of Digital Asset I'm delighted to announce ghc-lib , a repackaging of the GHC API to allow it to be used on different GHC ver...
2 comments:
Friday, January 25, 2019

HLint Unused Extension Hints

›
Summary: HLint detects unused extensions in LANGUAGE pragmas, including over 17,000 on Hackage. HLint has detected unused LANGUAGE pragma...
Tuesday, January 22, 2019

Release delays with Stackage

›
Summary: There are two steps that delay new versions of packages in Stackage. I aim to get the latest version of my software out to as many ...
1 comment:
Thursday, January 17, 2019

Ignoring HLint

›
Summary: HLint now has more ways to ignore hints you don't like. HLint makes suggestions about how to improve your Haskell code. But no...
Wednesday, January 09, 2019

GHC: From Bug to Merge (2)

›
Summary: The story of another bug, from report, patch, revisions, to merge. I recently posted the story of a GHC bug that took 3 months to ...
Wednesday, December 12, 2018

GHC: From Bug to Merge

›
Summary: The story of a bug, from report, proposal, patch, revisions, to merge. A while ago I found a bug in GHC . Like all good bugs, this ...
Friday, November 23, 2018

Counting the Cost of Colons in Haskell

›
Summary: Haskell uses :: as the type operator. That was a mistake that costs us over 1 million characters of source code. Haskell uses :: f...
5 comments:
Thursday, November 22, 2018

Downloading all of Hackage

›
Summary: I wanted to download the latest version of every package in Hackage. Here's a script and explanation of how to do it. Imagine y...
6 comments:
Sunday, October 21, 2018

Announcing Profiterole - GHC Profile Viewer

›
Summary: profiterole reformats GHC profile reports so they are easier to read. Do you often work with GHC time profiling reports? Do you fi...
1 comment:
Tuesday, October 16, 2018

Announcing Shake 0.17

›
I'm delighted to announce Shake 0.17. As always, the full changelog is on GitHub , but I'd like to highlight three areas that have s...
Tuesday, October 02, 2018

Full-time Haskell jobs in Zürich/New York, at Digital Asset

›
UPDATE: All positions have been filled. Summary: We're hiring 3 Haskell programmers and a few other roles too. I am currently workin...
Thursday, September 13, 2018

Review of Apple Watch (series 2)

›
Summary: I like mine. I've worn a watch since I was 10, starting with a Casio F-91W , replacing it with an identical model about seven t...
Thursday, August 30, 2018

Licensing my Haskell packages

›
Summary: I plan to license all future packages under the "BSD-3-Clause OR Apache-2.0" license. A few weeks ago I calculated that t...
7 comments:
‹
›
Home
View web version

About Me

My photo
Neil Mitchell
View my complete profile
Powered by Blogger.