Google Logica : un nouveau langage de programmation logique successeur de Yedalog

Par:
fredericmazue

ven, 16/04/2021 - 10:00

Google vient de présenter un nouveau langage open source : Logica. Ce langage est le successeur du langage de Google Yedalog. Il s'agit d'un langage de programmation logique de type Datalog. Le code Logica se compile en SQL et s'exécute sur Google BigQuery, avec prise en charge expérimentale de PostgreSQL et SQLite.

Google présente Logica comme étant beaucoup plus concis que SQL tout en prenant en charge les mécanismes d'abstraction propres et réutilisables qui manquent à SQL. Il est possible de travailler avec Logica depuis un Python notebook interactif. Logica est destiné aux ingénieurs, scientifiques des données et autres spécialistes qui souhaitent utiliser la syntaxe de programmation logique lors de l'écriture de requêtes et de pipelines à exécuter sur BigQuery. Logica est un langage pour le Big Data, pour exploiter le nouveau pétrole que sont les données, précise Google.

Google justifie ainsi l'existence de Logica : Une bonne programmation consiste à créer de petits éléments de logique compréhensibles et réutilisables qui peuvent être testés, nommés et organisés en packages qui peuvent ensuite être utilisés pour construire des éléments de logique plus utiles. SQL résiste à ce flux de travail. [...] Cette résistance inhérente à la décomposition de la logique en morceaux élémentaires est ce qui conduit aux longues requêtes artificielles, aux morceaux de code copiés et, finalement, impossibles à maintenir [...] Pour aggraver les choses, le code SQL est rarement testé [...] Les langages de programmation logique résolvent les problèmes de SQL en utilisant la syntaxe de la logique propositionnelle mathématique plutôt que la langue anglaise naturelle. Le langage de la logique formelle a été conçu par des mathématiciens spécifiquement pour faciliter l'expression d'énoncés complexes et convient beaucoup mieux à cet objectif que le langage naturel. Logica étend encore plus la syntaxe de programmation Logic classique, notamment avec l'agrégation, d'où le nom, qui signifie Logica = logique + agrégation.

Logica est un logiciel libre sous licence Apache 2.0, disponible sur GitHub.