I contributed to a few of these last year because I wanted to learn a new language. These programs are hard to translate if they are sufficiently large. One way to cheat is to look at someone else's translation to a familiar language like Python then make your translation from there. The problem like that, as someone mentioned elsewhere, is that if you are not careful then you are copying over their bugs blindly (in addition to the original program bugs). We were encouraged as part of the project to try to stay true to the original design. I did add in some error handling. I also found bugs in the python decomposition of a few of them (I don't remember which one's and didn't have the time to fix them).