Derrumbando esquemas. La concurrencia y Microsoft.
31 enero, 2008
Aplicaciones = CODIGO + ETIQUETAS es un libro muy interesante de MSPress que aventura las lindes que tomara el desarrollo de codigo en un futuro no muy lejano. Pero cuando leo en e-week lo siguiente :
«Officials within Microsoft’s software unit outline key trends that the company is trying to address, including integrating markup and imperative languages.»
Sera que microsoft ahora pretende aislar mas aun al programador del sistema. Quieren segun ellos «hacer la programacion facil» pero, ¿cual es el coste? ¿merece la pena separarse tanto del procesador? Si uno no conoce la plataforma para la que desarrolla y confia todo a su compilador, ¿que queda?. Esto en procesadores de un nucleo (ya, podemos afirmar, anclados en la prehistoria) podria dar buenos resultados, pero en las arquitecturas actuales confiar en la bondad del compilador es algo que raya la irresponsabilidad. Estoy seguro que si alguien lee esto y ha cursado asignaturas de programacion paralela habra visto que los compiladores siempre han soñado con poder paralelizar el codigo y de hecho la investiacion en este campo es vasta y amplia sin llegar a obtener los resultados que se desearian. ¿Prentendemos ahora evitar este handicap? ¿hacernos los sordos?
«Making Web programming easier is another goal, as is the integration of query logic, which Microsoft is providing with its LINQ (Language Integrated Query) technology. Yet another trend Zander said he sees is easing the integration of markup and imperative languages»
Dicen que su objetivo primo es alcanzar la WEB es decir que quien desarrolle lo haga apoyandose en la logica de negocio, y esto es muy importante, desean centrar todo el esfuerzo del programador en la aplicacion (en la logica de la misma) pero si no se controla a la hora de desarrollar aspectos de «etica de codificacion» entonces se puede comprometer al sistema completo.
En la charla que se dio el 28 de enero en MS Corp. afirmaban que Las taxonomias de los lenguajes de programacion estaban empezando a tambalearse, dice que ahora tenemos lenguajes dinamicos (abanderados por el DLR), lenguajes de programacion y lenguajes funcionales. Los lenguajes futuros, seran una amalgama de estos tres. C# sera la sintesis de esta nueva generacion de lenguajes.
Personalmente esto me parece excitante, aunque no se donde llegaremos.Segun Hejlsberg el enlazado dinamico sera algo a añadir a C# en breve y que desde su grupo desean mejorar los aspectos relaciondos con la concurrencia (si se considera lo que he comentado antes de la dificultad de un compilador «paralelice» el codigo con exito, y mas aun en los multicore, que se gestione bien la concurrencia). De hecho en la linea sobre la concurrencia que MS esta explotando tenemos a «PLINQ [implementacio paralela de LINQ]»
La frase que mas significativa me parece de la citada charla del 28 de enero es :
«We have to find meaningful ways to write concurrent programs or we’re out of business.»
Es decir que si no abordan la forma de escribir programas concurrentes (dadas las nuevas arquitecturas) se quedan literalmente «fuera» del negocio.
No comments yet