One thing that complicates projects like Rosetta Code, and RosettaGit by extension, is that things get easily muddled when taking into account the many ways a single language and platform can do the same thing. Rosetta Code suffers from it a lot, which is why I'm mentioning it here. Given the purpose of Rosetta* I'm surprised that there hasn't been a visible effort in containing and organizing these different methods in the same way some of the code examples show recursive vs iterative methods, etc.<p>By way of example (which you may like to add to the project, since you do have a section for it already), here are 6 Hello World samples I created in ARM assembler on Raspberry Pi.<p><a href="https://github.com/ksaj/helloworld" rel="nofollow">https://github.com/ksaj/helloworld</a><p>I purposely kept them all as similar as possible, but each one uses a completely different method for printing Hello World. Basically, writes() vs puts() vs fwrite() vs putchar() vs printf() vs bare metal (no use of standard library or otherwise). It's pretty easy to see the pros and cons of each method, and the different requirements of each method, by reading the code. Of course C programmers have heard of each of these methods, but these samples show what's actually happening under the hood.