We had a knowledge day at work today, with talks and workshops on various topics. I spent much of the day playing leethack, a game of coding puzzles (sort of like Advent of Code) using Go.

This was my first acquaintance with Go. I’d never used the language before or even seen it up close. But it turned out to be a pretty normal-looking language, and I put my Google skills to work, and got some puzzles solved. (See also: Essential Copying and Pasting from Stack Overflow.) I even won second prize and a chocolate medal by getting one last highly-scoring puzzle solved just 10 seconds before the end of the game.

I’d been curious about Go since it’s an up-and-coming language. I’m sure it’s great for the things it’s great for, but having tried it, I am less interested in it than I was before. I discovered that Go has no generics, and no functional features – no map and no filter, just loops. Having solved much of last year’s Advent of Code using F#, I’ve gotten used to functional thinking, and without generics I feel half crippled as a programmer. One can get used to most things and find workarounds… but I’d much rather use a language that allows me to be productive out of the box.