Я собираюсь создать библиотеку для обработки и генерации сообщений SyncML (SyncML = XML-протокол для синхронизации контактов и календарей), и я хотел бы иметь возможность портировать и использовать эту библиотеку на как можно большем количестве устройств. (Mac, ПК, iPhone, Android, BlackBerry, Windows Phone 7), главным образом потому, что логика будет той же самой, и я не хочу тратить время на перестройку ее в качестве собственной библиотеки для каждой платформы.
Мой вопрос: на какие технологии и языки программирования мне следует обратить внимание, чтобы добиться этого? На ум приходят Java, C и C ++, а коллега предложил Lua. Я хотел бы узнать мнение SO по этому вопросу, прежде чем я серьезно начну работать над этим.
Мой фон в основном C # / .NET, Objective-C и немного Java.
Любая информация приветствуется. Спасибо!