Learning programming, I stumbled upon some problems I have. I am fairly proficient with C++, and Objective C with Cocoa, and I have developed programs that many people use with Cocoa. But lately, I had the idea of writing my own parser in C++ (I think that for this task I should avoid Objective C). However, I found that C++ can be very frustrating when writing a parser, even a recursive descent one. So, I decided to learn another language. So, what I want is a language that can be used in conduction with C++. I want to be able to write parsers in it, and then use the results with C++. And I want to write it on OS X. I was thinking of learning Python, but I thought I should ask someone first. Your ideas?