cabecera

jueves, 2 de enero de 2014

M#, el nuevo lenguaje de alto nivel (pero para programar sistemas) de Microsoft

M#

Hace tiempo que viene oyéndose por los círculos tecnófilos el nombre de Midori como el sistema operativo de nueva generación de Microsoft.

Y lo que antes era un proyecto de investigación que tenía toda la pinta de transformarse en un nuevo proyecto Cairo ahora parece ser algo tangible y del que incluso hemos podido conocer detalles de su implementación.
Por ejemplo, el lenguaje de programación que se está utilizando para construir el sistema. Se trata de M# (M sharp), un lenguaje de alto nivel que está orientado a la programación del propio sistema operativo. La idea es tener un lenguaje que dé un muy buen rendimiento y sea fácil de desarrollar, siguiendo los principios de C#.

M# proviene de Sing#, el lenguaje utilizado para desarrollar Singularity, un micronúcleo desarrollado por Microsoft Research. Así lo menciona alguien que se declara antiguo empleado de Microsoft en un hilo de Reddit.

¿En lo técnico, qué mejoras trae?

M# aboga por cambiar dos aspectos de C# para mejorar el rendimiento. Por una parte, el garbage collector, componente que se encarga de recorrer las zonas de memoria ocupadas por cada programa y de liberar, en cada zona, aquellas partes que no se estén utilizando. M# se vuelve más eficiente e inteligente, sabiendo cuándo un objeto deja de ser necesario y puede ser eliminado de la memoria.
Por otra parte, también hay mejoras en el sistema de tipado, intentando afrontar un problema acuciante en los sistemas operativos actuales. Citando a mi compañero Guillermo, actualmente «los procesadores crecen a lo ancho y no a lo alto»: es decir, en vez de haber núcleos más rápidos, lo que tenemos son procesadores con más núcleos, en ocasiones optimizados y especializados para ciertos usos concretos.
Además, M# parece fomentar el uso de contratos de código para que los programas restrinjan su comportamiento a los caminos definidos por el sistema y fáciles de entender, de manera que el compilador pueda realizar optimizadores y los programas acaben siendo más robustos y fiables.
Por último, al parecer M# busca ser open source desde el primer momento. No se trata de una experiencia nueva para Microsoft: F#, la propuesta de Microsoft en programación funcional, también es open source.

¿Qué significa esto? ¿Qué sabemos de Midori?

Midori, según sabíamos hasta el momento, era un proyecto de Microsoft Research sobre un nuevo concepto de sistema operativo, totalmente distinto a lo que conocemos hasta el momento. Aunque oficialmente Midori no existe: Microsoft no ha declarado todavía nada al respecto.
Windows arrastra lastres desde el primer Windows NT, lanzado en 1993. Cada versión de Windows tiene por máxima la retrocompatibilidad casi total con todos los programas existentes para Windows. Midori parece ser el sistema operativo de nueva generación, máxime ahora que forma parte de la división de Sistemas Operativos de Microsoft, dirigida por Terry Myerson, según indica Mary Jo Foley.
Además, Midori estaría desarrollado utilizando M#, que no es sino una extensión de C# y .NET (M# busca ser eficiente en tipos desde el principio, y C# es un punto de partida magnífico). Esto significa que, probablemente, Midori estaría preparado para ejecutar todas las aplicaciones desarrolladas utilizando estas tecnologías, e incluso de manera más eficiente.
No se trata de un proyecto a corto plazo, desde luego. Un proceso así no se completa de la noche a al mañana. Pero tampoco pueden dormirse en los laureles: la informática ya ha cambiado demasiado con respecto a cuando Windows tenía su apogeo. A Microsoft no le conviene dejar pasar otro tren.
Más información | ZDNet
En Xataka Windows | M#, el nuevo lenguaje para el siguiente sistema operativo de Microsoft

Artículos recomendados



Ver más artículos »

  

No hay comentarios:

Publicar un comentario

Licencia de Creative Commons
© Oculta en el crepúsculo