El pasado abril de 2021, Google presentó un nuevo lenguaje de programación open source llamado Logica que busca conquistar el terreno de SQL que lleva conquistando el mercado desde 1970. Logica, que lleva el nombre de ‘logic + aggretion’, pretende expandir la sintaxis de programación lógica clásica.

Con este Tweet, Google deja clara su gran apuesta, un nuevo lenguaje de programación con el que podrás compilar a SQL y también ejecutar en Google BigQuery, buscando soluciones a las deficiencias de SQL.

¿Qué es la Programación Lógica?

La programación lógica se desarrolló a finales de la década de 1960. El proceso de programación lógica se basa en “hechos + reglas = resultados”, es decir, establece las reglas que las respuestas deben cumplir para resolver el problema.

Entre los lenguajes de programación lógica, los ejemplos más representativos son Prolog y Datalog, y el recién llegado, Logica de Google, que es un fork de Datalog.

Datalog es un lenguaje de consulta de datos, al igual que SQL, que tiene el mismo punto de partida que las bases de datos relacionales. Por lo tanto, puedes utilizar Datalog para diseñar interacciones con bases de datos relacionales a gran escala. Pero en formato de procesamiento de datos, muy diferente a como realizamos consultas SQL. Datalog está inspirado en la gramática matemática de la lógica predictiva, mientras que SQL sigue la gramática del lenguaje natural.

SQL, que se inventó en la década de 1970, se desarrolla en base al lenguaje natural, lo que permite que personas sin formación en informática y matemáticas accedan a la base de datos sin problemas, y esto a su vez es un defecto que SQL no puede subsanar.

El principal inconveniente de SQL es que tiene un soporte muy limitado para la abstracción.

Es por ello que para buscar soluciones, Google propone el uso de Logica, buscando crear codificaciones escalables, comprensibles y reutilizables, con un formato muy similar al de librerías.

Conclusión

Logica utiliza la lógica proposicional, que simplifica la expresión de consultas complejas, que mediante SQL no es posible ejecutar de forma fácil. Pero Logica va más allá, pudiendo compilar la programación de Logica en expresiones SQL y también ejecutar en Google BigQuery. Por lo tanto, en comparación con SQL, Logica es más conciso y admite mecanismos de abstracción reutilizables que SQL carece.

Photo by Muhannad Ajjan on Unsplash

Referencias:
· Google is pushing the new language Logica to solve the major flaws in SQL!