He leído innumerables blogs, publicaciones y preguntas sobre StackOverflow sobre las nuevas características de C# 4.0. Incluso las nuevas características de WPF 4.0 han comenzado a salir a la luz. Lo que no pude encontrar y me gustaría saber:Diferencia entre CLR 2.0 y CLR 4.0
- ¿Cuáles son los principales cambios a CLR 4.0 desde una perspectiva de desarrollador C#/WPF?
- ¿Cuáles son los principales cambios en CLR 4.0 en general?
Creo que, internamente, la mayoría de los cambios son para los nuevos lenguajes dinámicos y la programación paralela. ¿Pero hay otras mejoras importantes? Porque las mejoras en el lenguaje son solo eso, mejoras en el lenguaje. Solo necesita el nuevo compilador y esas características se pueden usar con una versión inferior de .Net, aparte de la versión 1.0/1.1 (al menos la mayoría de ellas se pueden usar).
Y si las características anteriores son las únicas, solo para estas características la versión se cambia a 4.0, que creo que es 4.0 porque está basado en la versión .Net 4.0 (es decir, después de 1.0/1.1, 2.0 & 3.0/3.5). ¿Está justificado el incremento de la versión?
Editado:
Como Pavel Minaev señaló en los comentarios, incluso esas dos características son CLR independiente. Hubo velocidad y otras mejoras en 3.0 y 3.5 también. Entonces, ¿por qué la versión se incrementa?
Ni la compatibilidad dinámica de idiomas ni la programación paralela son compatibles con CLR directamente. Los lenguajes dinámicos son compatibles con DLR, que se basa en CLR (y no utiliza nada específico para él, y puede ejecutarse en 2.0 muy bien). Parallel FX es solo una biblioteca. –