Profile

Cover photo
Neil Mitchell
Works at Standard Chartered
Attended York University
Lives in Cambridge, UK
783 followers|228,097 views
AboutPostsPhotosYouTube

Stream

Neil Mitchell

Shared publicly  - 
 
Programming errors are much more fun if your kid randomly hits the keyboard while you aren't looking. I just got:

C:\Program Files\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(321,3): error MSB4131: The "l /m  um,                                               jhMonoAndroidBinPath" parameter is not supported by the "ResolveSdks" task. Verify the parameter exists on the task, and it is a gettable public instance property.

That is 3 hours after Henry has gone to bed, in a file I didn't realise was even open when he "borrowed" the keyboard earlier.
2
Neil Mitchell's profile photoDon Stewart's profile photo
2 comments
 
Trying to get a free t-shirt: http://xamarin.com/f-sharp-shirt - but also trying out Mono. I failed on the t-shirt thing, their tools are full of config issues (I overcame 4 issues before running into at least 3). 
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Tractor time and garden maintenance. 
6
Add a comment...
 
How do destroy a Haskell program optimiser: inline a let bound variable outside a lambda at its use site within a lambda. With that fixed, the Bernouilli benchmark goes from 45x slower than GHC to 10% faster. #supercompilation
12
1
Ryan Yates's profile photoNeil Mitchell's profile photoJohn Lato's profile photoAlexey Romanov's profile photo
4 comments
 
+Ryan Yates has the right github repo, all the interesting code is in the directory https://github.com/ndmitchell/supero/tree/master/supero4 , where Supercompile.hs is the actual supercompiler and the rest is an expression language, a parser for the expression language, a driver to run the tests etc. If you want to run things the travis.hs script gives a good idea of what command lines are reasonable. The travis output gives up to date benchmarks: https://travis-ci.org/ndmitchell/supero - for example Bernouilli is currently at 0.76 of GHC time (so 25% faster). However, it's a shared machine, so be careful - treat them only as rough guides.
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Optimising compilers are basically an exercise in program transformation and variable capture bugs. In an untyped core language, it's a real pain to even find which transform broke your expression (it can take a day or so). In a typed core language, often the types go wrong which helps, but sometimes they don't (esp for numeric heavy code), and preserving the types is a lot of work.

For my supercompiler I have an untyped language and generate a "proof" of equivalence after every transformation. Tracking down a free variable capture bug just took minutes, and I know I'm not missing any in the examples that work. It's so easy it feels like cheating!
13
Neil Mitchell's profile photoMichael Weber's profile photoStuart Croy's profile photo
5 comments
 
PCC FTW!
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Yesterday I tried to watch a DVD I owned using "Ultra Violet", the movie studio version of playing on other devices without a DVD. It was not a pleasant experience. I had to make two logins, answer questions about where I purchased the DVD, managed to use up all redemption codes before I even started to play it, failed on my Chromebook and had to download an app for my iPad. The resulting movie was hard to navigate and skipped backwards a few times. Impressive, but this is a worse experience than DVD which requires physical media and enforced watching of privacy adverts. 
1
Neil Mitchell's profile photoErik de Castro Lopo's profile photoMichael Paulini's profile photoKetil Malde's profile photo
5 comments
 
On the positive side, UV codes are sold on eBay for pennies ;)
Add a comment...

Neil Mitchell

Shared publicly  - 
 
 
#Paypal states that their Adaptive Payments API is supported in 21 countries. Thats true if you count Japan, China, SIngapore and Pakistan three times each and Australia and Canada twice each.

https://developer.paypal.com/docs/classic/products/adaptive-payments/#


#paypalsucks  
2
Aristid Breitkreuz's profile photoErik de Castro Lopo's profile photo
2 comments
 
+Aristid Breitkreuz Yes, its 21, but a numner of countries are listed 2 or 3 times.
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Henry playing with his #raspberrypi. He is running a custom program that replies 'Henry typed a {getChar}' on every key press.
6
Aristid Breitkreuz's profile photo
 
Neil typed a H
Neil typed a e
Add a comment...
Have him in circles
783 people
Michael D. Adams's profile photo

Neil Mitchell

Shared publicly  - 
 
It is time to renew my BT broadband contract - which comes as a bit of a surprise considering I thought I had a rolling 1 month contract. The options are confusing, it focuses only on packages I can get (with 12 month minimums), but fails to mention what I'm on now or what happens if I do nothing. I am a native speaker with a PhD in computer science and a technical job, and I'm really confused. Hopefully once my son learns English he'll be able to do these things for me.

On the plus side, the new Infinity 2 package (which surely can be simplified to just Infinity?) provides "clever status lights". Yay, I love diagnosing errors with status lights.
2
Iustin Pop's profile photoBen Ford's profile photoMichael Paulini's profile photo
3 comments
 
I think I'd forgo the clever status light in exchange for clever human on the phone when things go wrong! Sadly the one feature that's missing from almost all broad band packages!
Add a comment...
 
How to make Mummy happy in one easy step.
 
Henry can now say shark :-) here he is with a pink whale shark. 
2
Add a comment...

Neil Mitchell

Shared publicly  - 
 
I started doing my reviews for META2014, but after 10 minutes ended up designing another supercompiler. Many hours of implementation later it is starting to compile stuff successfully, and beating GHC on a few benchmarks. Research is just too fun! (I still have the reviews to do, a task for the long weekend)
9
Neil Mitchell's profile photoMatthias Görgens's profile photoErik de Castro Lopo's profile photo
3 comments
 
The actual supercompiler module took a couple of hours (they really aren't difficult!) but all the support code to parse input files, desugar to Core, define the Core language, simplifications/free variables/variable normalisation takes hours and hours. Half of it for supero4 (the new effort) is copied from supero2 or supero3, but they all have quite different Core languages.
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Hit the nearby botanic gardens with Henry in the first sun of the year. Lots of sticks. 
8
1
Emily Mitchell's profile photo
Add a comment...

Neil Mitchell

Shared publicly  - 
 
Seems the New York Haskell Users Group is getting a talk about my TagSoup library - cool!
10
1
Gershom B's profile photo
Add a comment...
People
Have him in circles
783 people
Michael D. Adams's profile photo
Education
  • York University
    Computer Science, PhD, 2004 - 2008
  • York University
    Computer Science, MEng, 2000 - 2004
Basic Information
Gender
Male
Relationship
Married
Work
Occupation
Computer Programmer
Employment
  • Standard Chartered
    Computer Programmer, 2008 - present
  • Credit Suisse
    Computer Programmer, 2008 - 2008
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
Cambridge, UK
Previously
York, UK - Bristol, UK
Links
Other profiles