IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Actualités Discussion :

Google dévoile Logica, un nouveau langage de programmation logique open source

  1. #1
    Expert éminent sénior

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2018
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2018
    Messages : 1 548
    Points : 125 224
    Points
    125 224
    Par défaut Google dévoile Logica, un nouveau langage de programmation logique open source
    Google dévoile Logica, un nouveau langage de programmation logique open source,
    Qui compile SQL et peut fonctionner sur Google BigQuery

    Google a annoncé lundi un nouveau langage de programmation logique open source, baptisé Logica. C’est le successeur du langage logique existant de Google, Yedalog, et est un langage de programmation de type Datalog. Le nouveau langage de programmation compile SQL et peut fonctionner sur Google BigQuery. Il est réputé plus concis et prend en charge la fonction d'abstraction réutilisable qui fait défaut à SQL, d’après un billet de blog publié lundi par l’équipe open source de Google. Google est à l'origine de nombreux autres langages de programmation tels que Go et Dart.

    Datalog est un langage de requête logique qui se situe quelque part entre Prolog et l'algèbre relationnelle formelle qui sous-tend SQL. Il peut être considéré soit comme un langage d'interrogation exceptionnellement puissant, soit comme un langage de programmation logique soigneusement limité. Datalog a été créé pour donner aux théoriciens des bases de données un moyen d'utiliser la programmation logique, notamment par le biais de requêtes récursives.

    Nom : l01.PNG
Affichages : 114379
Taille : 36,6 Ko

    Yedalog a étendu Datalog pour être plus pratique, en ajoutant le support de concepts tels que les enregistrements imbriqués. Il permet aux programmeurs de combiner les pipelines de données parallèles et le calcul dans un seul langage. Logica est le successeur de Yedalog, qui était également l'un des langages de programmation proposés par Google.

    Le nouveau langage compile le programme logique en une expression SQL, afin qu'il puisse être exécuté sur BigQuery, le moteur SQL avancé de Google. Logica inclut également un support expérimental pour PostgreSQL et SQLite. Selon l'équipe de Google, cette solution est plus concise et « prend en charge les mécanismes d'abstraction propres et réutilisables qui font défaut à SQL. Il prend en charge les modules et les importations, il peut être utilisé à partir d'un carnet de notes Python interactif et il rend même les tests de vos requêtes naturels et faciles ».

    Selon l’annonce de Google publiée lundi, le nouveau langage de programmation résout les problèmes auxquels SQL est confronté en utilisant une syntaxe de nature mathématique en ce qui concerne la logique plutôt qu'un simple langage anglais. Le langage a été conçu par des mathématiciens talentueux, selon Google, principalement pour permettre aux développeurs d'exprimer plus facilement des déclarations complexes, car la nature mathématique convient mieux au cas d'utilisation plutôt que l'anglais simple. L'expression de déclarations complexes est plus facile et convient mieux à cet objectif que le langage naturel.

    « Malgré son adoption généralisée, SQL n'est pas sans faille. La construction d'instructions à partir de longues chaînes de mots anglais (qui prennent souvent la majuscule pour conserver l'esprit COBOL des années 70 !) peut être très verbeuse – une seule requête de plusieurs centaines de lignes est courante. Le principal défaut de SQL, cependant, réside dans son support très limité de l'abstraction.

    « Une bonne programmation consiste à créer de petits morceaux de logique compréhensibles et réutilisables qui peuvent être testés, nommés et organisés en paquets qui peuvent ensuite être utilisés pour construire des morceaux de logique plus utiles. SQL résiste à ce flux de travail. Bien que vous puissiez encapsuler certains calculs répétés dans des vues et des fonctions, la syntaxe et la prise en charge de celles-ci peuvent varier selon les implémentations, les notions de paquets et d'importations sont généralement inexistantes, et les constructions de plus haut niveau (par exemple, passer une fonction à une fonction) sont impossibles », a écrit l’équipe open source de Google.

    Le grand avantage de Logica sur SQL, selon Google, est son support de l'abstraction. Si SQL prend en charge les vues et les fonctions permettant de sauvegarder et de réutiliser des sous-ensembles de logique, elles sont limitées et varient selon les implémentations SQL. L'équipe de Google a déclaré a ce sujet:

    « Cette résistance inhérente à la décomposition de la logique en petits morceaux est à l'origine des longues requêtes artificielles, des morceaux de code copiés-collés et, finalement, des bases de code SQL non maintenues et non structurées (notez l'ironie). Pour aggraver les choses, le code SQL est rarement testé, car "tester les requêtes SQL" semble plutôt ésotérique pour la plupart des ingénieurs, au mieux. C'est pourquoi un certain nombre de langages de requête et de bibliothèques alternatifs ont été développés. Parmi ceux-ci, les systèmes basés sur la programmation logique sont peut-être ceux qui s'approchent le plus des limites de SQL ».

    La programmation logique est un paradigme de programmation déclarative dans lequel le programme est écrit comme un ensemble d'instructions logiques. La programmation logique a été développée dans le milieu universitaire à partir de la fin des années 60. Prolog et Datalog sont les exemples les plus marquants de langages de programmation logique, et Logica étend la syntaxe de la programmation logique classique, plus particulièrement avec l'agrégation, d'où le nom, qui signifie :

    Logica = Logique + Agrégation

    Alors que SQL fonctionne avec des relations qui équivalent à des ensembles de lignes, l'équivalent en programmation logique est un prédicat. Celui-ci définit toujours un ensemble de lignes, mais il s'agit d'une condition logique qui décrit les lignes d'une relation. Un exemple de code pour trouver des nombres premiers inférieurs à 30 serait le suivant :

    Nom : l02.png
Affichages : 4844
Taille : 9,3 Ko

    Logica est un langage de programmation déclaratif qui convient mieux à la manipulation des données, d’après l’annonce. Il a notamment pour objectif d'apporter de la lisibilité et de bonnes pratiques d'ingénierie aux requêtes de bases de données, les rendant plus faciles à lire, dit l’équipe Google. Logica permet également de définir et de réutiliser des sous-requêtes et des fonctions. Le nouveau langage de programmation open source est sous une licence Apache 2.0.

    Logica s'adresse aux ingénieurs, aux scientifiques des données et à d'autres spécialistes qui souhaitent utiliser la syntaxe de la programmation logique pour écrire des requêtes et des pipelines à exécuter sur BigQuery. Google encourage tout développeur qui utilise déjà la programmation logique et qui a besoin d'une plus grande puissance de calcul ; ou qui utilise SQL, mais qui n’est pas satisfait de sa lisibilité ; ou qui veut apprendre la programmation logique et l'appliquer au traitement des Big Data, de l’essayer.

    Source : Google

    Et vous ?

    Quel est votre avis sur le nouveau langage de programmation open source Logica de Google ?
    Pour quels avantages décideriez-vous d’adopter Logica ?

    Voir aussi :

    Dart 2.0 : le langage de programmation de Google sort officiellement en version stable, avec des améliorations de productivité et de performances
    Le langage Go continue sa progression avec de nombreux développeurs qui l'utilisent dans les projets professionnels et personnels, selon un sondage
    Recrutement IT : il crée un faux langage de programmation afin d'éliminer les candidats qui mentent sur leur CV, et cela a bien fonctionné
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre expert Avatar de air-dex
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 654
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 654
    Points : 3 774
    Points
    3 774
    Par défaut
    Normalement c'est aussi un langage avec de fortes prédispositions pour les CGI.
    "Ils ne savaient pas que c'était impossible alors ils l'ont fait." Mark Twain

    Mon client Twitter Qt cross-platform Windows et Linux. (en cours de développement).

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    263
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 263
    Points : 720
    Points
    720
    Par défaut
    Oui, c'est CGI qui avait racheté vers 2006 Logica.
    Cette dernière ayant racheté CMG et Unilog

  4. #4
    Membre expérimenté
    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2014
    Messages
    605
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Septembre 2014
    Messages : 605
    Points : 1 446
    Points
    1 446
    Par défaut
    L'exemple donné est à 90% imbitable...

Discussions similaires

  1. Réponses: 67
    Dernier message: 18/02/2015, 08h35
  2. IBM dévoile son nouveau langage de programmation Corelet
    Par Cedric Chevalier dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 23/08/2013, 22h54
  3. Réponses: 290
    Dernier message: 31/05/2013, 10h43
  4. Réponses: 130
    Dernier message: 04/02/2011, 10h11
  5. Nouveau langage de programmation : le langage G
    Par G-FACTION dans le forum Autres langages
    Réponses: 10
    Dernier message: 19/07/2009, 19h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo