A series of exercises when learning a new programming language.
The challenge is not the logic of the exercises, that's supposed to be trivial. The challenge is the transposition of these ideas to a new language:
- how to write a function?
- how to get the command-line arguments?
- how to call a function recursively?
- how to iterate over the letters of a string?
- how to handle unicode?
- how, if it's even possible, to handle optional function arguments?
- and so on...
If you were to learn a new language, say Japanese, you might be interested in knowing how to introduce yourself:
Hello, I'm Jonathan. How are you?
Moving forward, you could learn structure ad hoc, and find yourself in a position where your knowledge is uneven: you can use verbs in the past tense, but you don't know the words for colors.
In many ways, the same thing happens when you learn a new programming language. You already know what a "for-loop" is, you just need to know how to write it in a new language. Hopefully, by structuring the exercises in a specific order and organizing the content, most of the language can be covered systematically without leaving many gaps.