Согласно этой вики-дискуссии Google , она использует libjingle, который они реализовали в C ++. Однако такая большая компания, как Google, достаточно велика, чтобы разрабатывать собственные компиляторы с поддержкой любого диалекта, который они предпочитают. Это было бы разумно сделать для Google, чтобы было что-то, что можно скомпилировать для каждой операционной системы, которую они хотят поддерживать.
У меня нет Google-Talk, но я проверил бинарные версии Picasa, другого приложения Google. В ней упоминается библиотека времени выполнения Visual C ++, так что, думаю, я ошибаюсь, и Google, вероятно, просто использует Visual Studio вместо этого.
В целом, C ++ является независимым от платформы языком, что делает его наиболее подходящим языком для написания новых проектов. Однако, в зависимости от желаемой функциональности, вам нужны соответствующие библиотеки для всех платформ, которые вы хотите поддерживать, и убедитесь, что все они предоставляют одинаковые методы.
Java генерирует независимые от платформы двоичные файлы. Таким образом, он более мощный, чем C ++, но эти двоичные файлы зависят от виртуальной машины Java, что снижает их производительность. Это делает их менее квалифицированными.
Существует множество других языков, которые можно было бы использовать, но Google, скорее всего, использует язык, который поддерживает как можно больше платформ. (Включая будущую операционную систему Google Chrome.)