Today’s exercise was Isogram (a word with no repeating letters). Since everyone was showing off their higher-order and LINQ stuff yesterday I decided to see if I could do it in just that too. Here it is. Other solutions were still better than mine. I guess you know I’m not cheating since I always seem to do something a bit odd.

public static bool IsIsogram(string word)
{
    return word.ToLowerInvariant().CountBy(c => c)
        .Where(c => c.Value > 1 && Char.IsLetter(c.Key)).Count() == 0;        
}

2048 is compiling again, and this time the tiles are moving…. incorrectly. I added a next state variable to keep track of where things should be on completion and only add the new 2 to the board afterward. So the animation plays then things jerk to where they should be. Unpleasant but it is getting better.