Adrianistán

El blog de Adrián Arroyo


Web Semántica desde cero: RDF

Este artículo es el primero de una serie de tutoriales que van a explorar la web semántica a día de hoy, fuera de todo hype inicial y todo el universo de los datos enlazados. Lo primero será entender el concepto fundamental y lo segundo, RDF, piedra angular de la web semántica tal y como la describe W3C.

Seguir leyendo

miniKanren, programación lógica diminuta

Cuando hablamos de programación lógica, lo primero que se nos viene a la mente es Prolog, un lenguaje del que ya he hablado varias veces, y que fue uno de los primeros lenguajes lógicos así como uno de los más populares. Hoy vengo a hablaros de una familia de lenguajes, llamada miniKanren, que demuestra que cualquier lenguaje de programación puede adoptar el paradigma lógico con solo 3 instrucciones. miniKanren está disponible como DSL en muchos lenguajes: Scheme, Haskell, Clojure (llamado core.logic), Python, C#, Elixir, Go, JavaScript, Rust, ... y prácticamente cualquier lenguaje.

Seguir leyendo

Cosas que (probablemente) no sabías de Python

Python es un lenguaje muy popular hoy en día. Aunque pueda no ser el mejor, su desempeño es bueno, con mucha documentación, librerías, es cómodo y fácil de aprender. Python además sigue la filosofía de baterías incluidas, es decir, de intentar llevar de serie casi todo lo que vayas a poder necesitar. En este artículo vamos a ver algunas partes de Python no tan conocidas pero igualmente interesantes y útiles.

Seguir leyendo

Programación web en Prolog

Como ya hemos visto con anterioridad, Prolog es un muy buen lenguaje para ciertos problemas. Hoy en día, el lenguaje que se creía que sería el futuro está prácticamente olvidado. No obstante, existen algunas personas que se han esforzado para que Prolog siga siendo un lenguaje útil. ¿Y qué requisito es básico para un lenguaje útil? ¡Que pueda usarse para hacer un servidor web claro! Es por eso que decidí emprender una aventura quijotesca y ver hasta donde era capaz de llegar Prolog en el desarrollo web. Para ello voy a usar SWI Prolog.¿Suena alocado? Pues ya lo estás usando, el servidor de gestión de imágenes de Adrianistán (https://files.adrianistan.eu) está hecho en Prolog.

Seguir leyendo

Bosque, el nuevo lenguaje de programación de Microsoft

Hace unos pocos días Microsoft Research, la parte de investigación de Microsoft, publicó Bosque, un nuevo lenguaje de programación. El lenguaje sigue en fase experimental y el compilador es un poco patatero (está hecho en TypeScript y necesita Node.js para funcionar). Pero eso es lo de menos, porque son detalles. Lo importante son las ideas que aporta.

Seguir leyendo

Miri: una máquina virtual para Rust

Hace poco salía la noticia de que Miri ya estaba disponible para instalar en las versiones nightly de Rust. Pero, ¿qué es Miri? y ¿por qué es importante una máquina virtual para Rust?

Seguir leyendo

Programación lineal: alcanzando la perfección

La programación lineal es una disciplina dentro de las matemáticas, más concretamente, del campo de la investigación operativa muy interesante. La problemática que trata de resolver es la de asignar recursos limitados entre actividades competitivas de la mejor manera posible, es decir, optimizar este reparto. Programación significa en este contexto planificación.

Seguir leyendo

Agromapa de Castilla y León

Hace unos meses salió la convocatoria del Concurso de Datos Abiertos de Castilla y León 2018. Esta era la tercera vez que se organizaba y la primera en la que me sentía suficientemente preparado como para presentar algo.

Seguir leyendo

¿Qué pasó con la Web Semántica?

La web semántica ha sido un concepto estudiado y desarrollado por W3C prácticamente desde el comienzo de la web misma por el propio Tim Berners-Lee, aunque su desarrollo se aceleró con el artículo de 2001 en Scientific American, The Semantic Web. La idea es muy sencilla, si la web ha servido para enlazar documentos, de distintos orígenes, la web semántica es lo mismo, pero reduciéndonos a lo más fundamental, los datos en sí y además, de forma comprensible para ser procesado por una máquina.

El concepto es muy prometedor, pero con el paso de los años cada vez se oye menos sobre el tema. En este artículo analizaremos las tecnologías que componen la web semántica y los problemas que tiene en el mundo actual.

Seguir leyendo

API de Adrianistán

Con unos días de diferencia respecto a la publicación del nuevo blog, ha llegado una característica muy interesante, la API del blog.

Seguir leyendo