I want to learn clojure, and like some other people I've decided that a good way to start learning is to work through the Project Euler problems.
To stretch my mind, and to provide a frame of reference, I'm simultaneously going to try to solve the problems in two other languages I know better, SAS and java.
I have set myself a few rules:
- I have to solve all of the problems myself, no cheating by looking at other people's solutions.
- I have to use the base language, no third-party libraries to make it easy, although I can define my own utilities as I go along and use these.
- No going on to the next problem until I've solved a problem in at least one language. I'll also try not to fall too far behind in any language, but won't be too strict about this.
There are obviously many ways of solving some of the problems, and my early attempts are likely not to use the most efficient methods. I'm ok with this, as long as I'm within the suggested 1min limit. I may go back and resolve some of the problems if I think of a better way, or may present multiple solution methods sometimes.
I may solve the problem the same way in all three languages, or may try different methods in each, depending on what occurs to me at the time, and what seems natural. Depending on the order of the languages I attempt a particular problem in, I may think of better ways as I go along, and that's ok too.