You might want to look at gccxml: http://www.gccxml.org/HTML/Running.html <http://www.gccxml.org/HTML/Running.html>It basically parses C++ code as it's seen by the compiler and produces a XML file. There's also a Python module that reads those files (python-pygccxml package on Ubuntu) that can be useful when writing bindings. One can also add attributes to the C++ code to do pretty things like identifying output parameters. I'm definitely interested in Python and Mono bindings, so I hope this tool will be useful for writing bindings for a lot of languages. -- Some companies die Be's beauty lives forever in immortal rhyme