Tuesday, August 28, 2012

Fortunate Fall

This morning, presumably as a result of Saturday's drenching, my bike was squeaking a lot on the ride to work. By the time I got there, I'd just about pinned it down to "something in the front wheel".

I didn't get around to doing anything to it at lunchtime, so it was still squeaking on the way home. But, at a T-junction on the cycle path, I wanted to turn right, while another cyclist coming from the blind corner to the left also wanted to turn right -- result a low-velocity collision as our front wheels met.

We ascertained that no damage had been done, and cycled off. A hundred yards or so later, I realized that the front wheel was now running quietly again! So, no need to try haphazard lubrication and hope.

Sunday, August 26, 2012

Three hot days and a thunderstorm

Or so goes the traditional English summer.

After the hot weekend, and a couple of dull days, the weather brightened up so I could take Karen out, first to the exhibition of Han grave goods at the Fitz (weds), then to the Crown and Castle for lunch (Thu) where we sat out on the terrace until the haze came up and the wind strengthened (as we were moving on to coffee), and again on Friday, when Karen's mother came to visit and we went out for lunch, and again sat outside at the Plough at Coton.

But then Saturday...

It sprinkled a bit around 10-ish when I wandered out to do a bit of shopping, and a bit heavier burst after I got back; and it looked fair and the radar tracking the weather suggesting it would miss us, so I headed off to the Plough at Fen Ditton for the CAMDUG meet-up. And for a while thereafter, we sat and chatted out on the riverbank in the sun -- until suddenly all went dark.

We got inside ahead of the rain, which then tipped down in stair rods with hail for an extended period, before brightening up.

So then time to cycle home again; and by the time I got past the Elizabeth Way bridge, it has started sprinkling, and carried on that way until I had gone through Cambridge -- at which point the heavens opened again, so it was just head down and pedal, being glad of just having silk shirt and lycra shorts, which were reasonably comfortable when saturated, even though the rain was now cold (unlike a couple of weeks ago when I got similarly caught in torrential rain on the way home from work). Fortunately I got home ahead of the encore with hail.

This morning, looking at how much the pond had been refilled, it seemed like we'd had well over an inch of rain in total.

Third time lucky

After two previous attempts were at least partially a wash-out, this year's late August cycling holiday in Norfolk went without rain.

Arriving at the King's Head soon after midday on the second day (temperatures pushing 30) of the one really hot weekend we've had this year, I headed up to the Gin Trap at Ringstead for lunch, then out to Burnham Market along the back lane that's marked as a cycle route.

View 19 August 2012 in a larger map

Following a shandy at the Nelson 1805 (formerly the Jockey), I headed back, deciding on a different route, through the narrow lanes to Syderstone. I didn't stop at the sign saying "Unsuitable for motor vehicles", but carried on into where it became unmade. The first bit was loose stone, so I needed to push, and later there were stretches of dry loose sand, which were for going barefoot and pushing -- though in the late afternoon heat, and without air cooling, I was dripping with sweat on the pushing sections.

I didn't quite make it to the main road unscathed -- just a few yards short, there was a pool of silty mud across the whole track, which clung to the tyres as I pushed, and oozed between the toes.

Back at base, despite the two refreshment stops, I sank a couple of bottles of mineral water; and then the same again plus a pint of Spitfire over dinner.

View 20 August 2012 in a larger map

The next day was duller and cooler; and the route I took through North Creake aimed to do in reverse the path through Holkham Hall I did last year, only this time there was no garden produce for the picnic lunch on the coastal path towards Wells. Indeed everything was being late -- not even blackberries were ripe for picking; mostly still having flower buds opening.

Year without a summer

Blackberries way behind schedule (blossom and buds way over-exposed)

Holkham Hall

Holkham Hall

With the hour advancing, by the time I was heading south from Wells, it was too late for looking for pubs, except if they'd be open all day, so I just took an easy way back.

View 21 August 2012 in a larger map

The last day's ride was aimed again for a Gin Trap lunch, going to Sandringham, following the cycle route to Sedgeford, then detouring out to Heacham, using the cycle paths to Hunstanton, thence to Ringstead.

Ringstead Mill

Ringstead Mill

The last bit went cross country, taking an early turn from the cycle route towards Docking (passing the one blackberry bush I saw all weekend with ripening berries), then the road to Fring where I hardly had to pedal once (and then only because of a gusty south-westerly), before taking a final loop around the (for once, dry) green lane to the west of Great Bircham; totalling about 95 miles in a hotter and thus less energetic holiday than last month.

And then home, with a token few sprinkles of rain on the windscreen on the way.

Friday, August 17, 2012

The prodigal returns

Yoko, our female Tonkinese, managed a disappearing act on Sunday; and was not sitting waiting crossly to be let in either that evening or the next morning. The lack of corpses by the roadside gave hope, but there was no response to leafleting the neighbours.

Then today, she reappeared, fast asleep on an armchair, not even announcing her return with her usual wailing.

Wednesday, August 15, 2012

Building a stand-alone scalalib.dll for .net convenience

Following up on the previous post -- making a single dll scala runtime goes as follows

  1. Download and expand IKVM 7 into folder
  2. Copy the contents of the bin subfolder into a folder .\scala-out
  3. Copy scalalib.dll and forkjoin.dll into that same .\scala-out folder
  4. Install ILMerge if not already available
  5. Run this command (assuming powershell prompt)
    & 'C:\Program Files\Microsoft\ILMerge\ILMerge.exe' /closed /allowDup /t:library /targetplatform:"v4,c:\windows\Microsoft.NET\Framework\v4.0.30319" /out:scalalib.dll .\scala-out\scalalib.dll .\scala-out\forkjoin.dll  .\scala-out\IKVM.OpenJDK.Charsets.dll .\scala-out\IKVM.Runtime.JNI.dll .\scala-out\IKVM.OpenJDK.Text.dll .\scala-out\IKVM.OpenJDK.Beans.dll .\scala-out\IKVM.OpenJDK.XML.API.dll .\scala-out\IKVM.Reflection.dll .\scala-out\IKVM.Runtime.dll .\scala-out\IKVM.OpenJDK.Management.dll .\scala-out\IKVM.OpenJDK.Corba.dll .\scala-out\IKVM.OpenJDK.Core.dll
    and wait until done (takes ~3GB memory, so 64-bit systems only)
  6. Observe that some of those referenced assemblies aren't actually in the IKVM subset that the scalacompiler.exe drop bundles
  7. Build helloworld.exe as before and co-locate it with the new 33Mb scalalib.dll that resulted from all the grinding
  8. It just works™

Hopefully the real deal will bundle something like this -- ideally also strong-named (but hey, you can do that with Mono.Cecil to rewrite that file and the assemblies you link against it).

P.S. If you have .net 4.5 on your machine, change the target platform as indicated here.

PP.S. The runtime has a dependency on the native code ikvm-native-win32-x64.dll and ikvm-native-win32-x86.dll from the IKVM download, though I'm not sure where from the depths of IKVM you may hit those.

Hello Scala.net

Belatedly spotting the March '12 update to the Scala.net story, a very brief "Hello, World"

Build with

path\to\scala-bin\scalacompiler.exe -d path\to\output -target:exe -Ystruct-dispatch:no-cache -Xassem-name HelloWorld.exe -Xassem-extdirs path\to\scala-bin -Xshow-class HelloWorld -Xassem-path "C:\Windows\Microsoft.NET\Framework\v4.0.30319\System.Windows.Forms.dll" hw.scala

where giving "." as path\to\output will put the new executable in the same folder as the scala compiler.

You now need to copy all the dlls (apart from mscorlib and the other System.* files) out of that folder into your output path folder. Then


and, suddenly:

Still slightly painful to actually perform the build, but definitely getting there. Still needs a stress-test.

Monday, August 13, 2012


Spent the weekend at this years BRS con, with Friday being an "on my bike day" so I could sample the Real Ale Bar, the other days playing chauffeur for Karen, and running other errands.

As usual, it was a good chance to meet people I'd not seen in ages -- including Paul Mason, who had managed a visit back from Japan, to talk about (or point and laugh about) how academia views the fan phenomenon.

And as usual, it made me think, maybe I should dust off something from the cupboard and try doing this thing again, even if only just once every other year. Maybe some HeroQuest or something similar. But then the moment passes.


So, while sitting on the drive at the anniversary of acquisition,the car odo was reading 6454 miles, or 2980 miles on the year -- thanks to last year's dry autumn, and the usual run of snow days (and no thanks to the spring weather).

Talking of which, the fruit trees seem to have counted April-May as a second winter, because they have had a second run of blossom in the last few weeks:

New plums in August

Baby plums

Apple blossom in August

Apple blossom

The plums at least managed to avoid the worst of the late frosts, and if the belated warm weather keeps up, might end up ripening a decent crop -- but at current indications that will be after the bank holiday weekend, the usual peak (and unlike last year when they were peaking about now); but the apples have been hit -- the Bramley has but a handful of fruit that look like they'll never get big enough to use; though the Charles Ross has a smaller than usual crop of smaller than usual fruit, but will at least not be a complete write-off.

Friday, August 03, 2012

On the road again

Between holiday and just everyday cycling with a purpose (unlike the gratuitous getting miles in on rare dry evenings in June), I managed 350 miles last month, which is more like it.

Last night on the way home through Bourn, it was just starting to spit with rain, with a strong southerly wind in my face, so I was barely over 20mph going through the 30 limit (as opposed to the more usual barely legal), but just kept on pedalling to get up the far side of the valley an keep ahead of the weather.

Then a car pulled out, and promptly go stuck behind another slow cyclist grinding up the hill -- so nothing for it but to keep pouring on the coal, and overtake the both of them. I was gasping for breath on the next up out of the village, but it was satisfying.

And I managed to get clear of the path of that batch of weather and carried on dry all the way home.