Esto se hace todo el tiempo.
Cada compilador traduce el "lenguaje primario", como C ++, al lenguaje ensamblador nativo de la máquina o al código de bytes independiente de la arquitectura en el caso de los lenguajes interpretados.
Sin embargo, me imagino que no es de eso de lo que estás hablando. Probablemente desee un traductor que convierta C ++ a algo como Java o Python. Pero, ¿qué sentido tiene eso? En el mejor de los casos, el resultado final tendrá exactamente la misma eficiencia que la fuente original. (Prácticamente, será mucho peor).
Si solo desea traducir el código para poder leerlo como un idioma que entienda, dicho traductor tendría el efecto opuesto al deseado. Te quedará una gran cantidad de código críptico, poco intuitivo e ilegible.
Esto se debe a que solo las cosas más triviales se traducen directamente de un idioma a otro. A menudo, lo que es simple en un idioma requiere bibliotecas masivas para otro, o puede ser imposible por completo. Por lo tanto:
- Si el programa es trivial, puede obtener un resultado decente. Pero entonces, si es así de simple, ¿cuál es el punto de pasarlo por un traductor?
- Si el programa no es trivial, el código será de baja calidad.
Al final, la única forma de escribir un buen código es escribirlo realmente. Las computadoras simplemente no pueden, al menos no todavía, igualar a los humanos en cuestiones de legibilidad, mejores prácticas y soluciones elegantes.
En resumen, simplemente no vale la pena.