blog
Desarrollo Opinión Ur/Web

Nuevo lenguaje web del MIT

Aparecen en la web, de forma regular, nuevos lenguajes de programación, con el objetivo de simplificar el desarrollo de aplicaciones web. Muchos son de programación declarativa, pero también hay algunos de programación imperativa. Es el caso de Ur/Web, un nuevo lenguaje de programación web que está siendo desarrollado en el MIT y ya empieza a agitar algunos sectores del desarrollo web.

¿Sabes Haskell y ML, y Alguna vez has pensado en tener CSS, XMLJavaScript y HTML todo en el mismo script? Pues, si lo has pensado y no has desarrollado la estructura, ya no hace falta perder el tiempo.

El objetivo de Ur/Web no es solo simplificar el desarrollo de aplicaciones web, permitiendo una mejor interacción entre CSS, XML, JavaScript y HTML, es también hacer que estas tengan mejor rendimiento y que estas sean más seguras. De hecho, Ur/Web prohibe el acceso no autorizado entre elementos de la página.

Ur/Web es un lenguaje que combina una biblioteca enfocada en la Web y un compilador. El compilador genera automáticamente código de XML, JavaScript y 'queries' a la base de datos en las posiciones correctas, sin conflictos. De esta forma Ur/Web permite que los desarrolladores puedan escribir páginas webs como programas autosuficientes. Incorporando estas tecnologías en su estructura, los desarrrolladores no necesitan trabajar cada lenguaje individualmente.

El proyecto, encabezado por el profesor de tecnología de software, Adam Chlipala, entre otras cosas, limita que cada “nueva variable definida por un programador se limite a un tipo de datos específico”.

Ur/Web no genera hojas de estilos automáticamente, pero una de sus características que me parecen más interesantes es la posibilidad de “analizar la aplicación web, hacer un listado de todas las clases de CSS que pueden ser nombradas y hacer una descripción del contexto en que cada clase podría ser usada.

Ur/Web es para proyectos en que la seguridad es la mayor preocupación y es en sí mismo un proyecto ambicioso que se caracteriza por permitir que las aplicaciones desarrolladas no fallen en su ejecución además de no:

  • Sufrir ningún tipo de ataque por inyección de código

  • Generar código inválido de HTML

  • Incluir código a nivel de cliente que pueda llevar a "suposiciones" sobre los servicios AJAX que el servidor web remoto tiene.

  • Intentar consultas SQL inválidas

El sitio web oficial de Ur/Web no es muy atractivo gráficamente, pero creo que este no es el objetivo del proyecto en este momento. Además es posible encontrar información, documentación y ejemplos prácticos de lo que se puede hacer con esta herramienta.

El tiempo y la comunidad dirán si esta herramienta Open Source es realmente válida o no, pero como dice el propio Chilpala, es “un lenguaje con potencial” y puede permitir reducir “costos en el desarrollo web”.

Fuentes:

Wordpress 4.1

Artículo anterior

Sass como preprocesador de CSS

Siguiente artículo
I help Organizations to use Technology to improve people's lives

También te puede interesar

Los mejores software para gestión de proyectos

3 Herramientas DevOps

Maquetar en Drupal 7: Funciones del Tema

CodyHouse