¿C # se fusionará con el compilador nativo de C ++? [cerrado]


23

De acuerdo con este post:

http://channel9.msdn.com/Forums/Coffeehouse/MS-working-on-a-same-compiler-for-C-AND-C--Not-in-incubation-but-for-production-

¿Cuánta verdad hay en esta publicación? ¿Debería ser tomado en serio por los programadores hardcore de C ++ (desarrolladores de juegos, etc.)?

Editar: Hay otro propósito para esta pregunta ... ¿C # será compatible con C ++?


55
+1 porque las publicaciones de trabajo vinculadas en el sitio de Microsoft sí mencionan un compilador para c # y C ++ careers.microsoft.com/jobdetails.aspx?jid=81769
MarkJ

Me pregunto por qué no está en las noticias en estos días ...
user73830

Tanto C # como C ++ pueden beneficiarse de las mismas optimizaciones realizadas sobre un IR común, por lo tanto, podría tener sentido tener un compilador unificado.
SK-logic

1
¿Por qué debería ser compatible con versiones anteriores? Estos lenguajes son demasiado diferentes, lo que no significa que ambos no puedan compartir la misma capa intermedia del compilador (mientras se dirigen a los diferentes backends).
SK-logic

1
Por ejemplo, el análisis poliédrico (que mencionaron explícitamente en el anuncio) será exactamente el mismo para ambos lenguajes, con alguna dependencia adicional en el análisis de alias para la interfaz C ++.
SK-logic

Respuestas:


9

Ni en sueños. Se necesitaría la refactorización más drástica de un lenguaje para que funcione con C ++ y rompería cada centímetro del código C # existente. Lo más probable es que solo estén tratando de compartir el mismo marco de generación de código nativo.


6

Probablemente incorrecto en los detalles. MS ya tiene un compilador MSIL nativo en forma de Ngen. No me sorprendería si tanto Ngen como cl usaran el mismo código de fondo para que compartan mejoras como la mencionada vectorización automática.


No, cl no comparte ningún backend común con ngen.
SK-logic
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.