My first program will be a Sudoku solver, for a few reasons:
- They're simple and straightforward, but leave room for interesting optimizations and designs
- The rules can be expressed in a variety of ways which will force me to think about how domain knowledge is represented in the language
- I've been wanting to write one for the hell of it for a while anyways
- Someone just gave me a large book of Sudoku puzzles, and I can't be bothered to finish them by hand; just writing a program to finish them seems a bit like cheating, so I'll create a programming language to write a program to solve them. That's about fair I think.
(Yes, fans and enthusiasts, this means Epoch is officially back in action - please try to contain your excitement. I don't want to get any unbridled joy on my shirt.)