I am working on a relatively big system with:
- low level C++/C codes dealing with multimedia data(video/audio)
- a lightweight database, preferably MySQL but I am open to other better alternatives
- RESTful web service as the front end
All the requests will be handled by RESTful interface, low level C++/C codes dealing with the real hard work(analysis/processing) and the database is used for some intermediate results for future reuse.
In this case, what programming language will best fit the job?
Something I have thought about:
Java: Restlet is fairly easy to use, it works well with MySQL, however its interface to C/C++ using JNI is kind of obsolete now. JNA is better updated, but it does not support mapping of c++ classes, so the integration could be awkward.
Net: the system is for Linux OS, so rules out .Net
Python: can work with C/C++ using ctypes/SWIG, work with MySQL, and has its own Python DB. RESTful interface can be implemented using CherryPy etc. I am not that familiar with Python, and that also means my team need to learn Python, too.
others? Perl? Ruby? etc...