Journal Retour d'expérience et présentation d'Ada dans le contexte d'une appli audio

Posté par (page perso) . Licence CC by-sa
Tags :
20
12
nov.
2017

Bon, ce sera presque un journal bookmark mais je vais essayer d'étoffer un peu.

Dans la même veine que l'excellent journal sur la ré-écriture de Gnirehtet en Rust, un article sur ElectronicDesign vient de sortir sur le portage de l'implémentation de référence en C d'un décodeur MPEG-2 vers Ada.
Bon, l'article est co-écrit par Raphaël Amiard d'AdaCore et Gustavo Hoffmann de chez Dolby ce qui présage tout de même d'un peu d'évangélisation.
Toutefois, cet article a le mérite de montrer beaucoup d'aspects du langage pouvant être utilisés dans le cadre d'un décodeur audio tout en détaillant leur utilisation dans le portage.
On y parle donc d'arithmétique à virgule fixe, (explications ), d'énumérations, d'enregistrements, d'absence de pointeurs (si si, on peut faire beaucoup de choses sans pointeur), de généricité et d'un peu de multi-tâches.

Bonne lecture, je reste dans le coin pour les questions :D

PS : Au passage, on pourra même en parler le 7 décembre prochain si vous venez sur le site d'Ada-France au Paris Open Source Summit

  • # Le lien direct vers l'article

    Posté par (page perso) . Évalué à 9 (+6/-0).

    • [^] # Re: Le lien direct vers l'article

      Posté par (page perso) . Évalué à 5 (+3/-0). Dernière modification le 12/11/17 à 19:41.

      Ah ouais, j'ai tellement voulu mettre de liens dans le journal que finalement, j'ai oublié le plus important !
      Dommage que je ne puisse plus modifier le journal.

      En tout cas, un grand MERCI :)

  • # Forth

    Posté par (page perso) . Évalué à 3 (+1/-0).

    On y parle donc d'arithmétique à virgule fixe,

    Chuck Moore lui ne voyait cela que par les entiers ! Vu son grand age maintenant, je ne sais pas où en est la suite de ses travaux.

    https://en.wikipedia.org/wiki/Charles_H._Moore

  • # adacore et GPL ?

    Posté par . Évalué à 4 (+1/-0).

    Je n'ai jamais vraiment regarder les détails, mais il me semble que adacore "reprends" le code de gnat, le compilateur ada de gcc. Ils en ont fait une version propriétaire avec support. Mais bon, le code de gcc n'est-il pas en GPL à la base ?!

    "La première sécurité est la liberté"

    • [^] # Re: adacore et GPL ?

      Posté par (page perso) . Évalué à 5 (+3/-0). Dernière modification le 13/11/17 à 09:51.

      En fait, à l'origine, GNAT était développé par l'université de New York.
      Après la sortie et la validation du compilateur, licencié sous GPL, les auteurs ont fondé deux sociétés AdaCore à New York et ACT Europe à Paris.
      Si au début, le compilateur vivait sa vie en dehors de Gcc, il fait maintenant partie intégrante et AdaCore, fusionné depuis 2012 avec ACT Europe, reverse ses développements tous les ans dans le code de Gcc, généralement vers juin.
      Il existe donc plusieurs versions:

      • FSF GNAT, sous GPL3+ avec une exclusion pour le Runtime
      • GNAT Pro, la version "commerciale" d'AdaCore avec support
      • GNAT GPL, la version GPL d'AdaCore qui est généralement une version Pro avec un an de retard et sans support téléchargeable sous forme binaire depuis le site Libre

      Au passage, depuis plusieurs mois, AdaCore dispose maintenant d'un compte Github sur lequel on retrouve les versions de développement des différents outils développés par leurs soins.

      • [^] # Re: adacore et GPL ?

        Posté par . Évalué à 4 (+1/-0).

        Cela veut dire que le code de GNAT pro est donné à ses clients payant, et qu'ensuite le code est reversé dans le code de gcc chaque année ?

        "La première sécurité est la liberté"

        • [^] # Re: adacore et GPL ?

          Posté par (page perso) . Évalué à 2 (+0/-0). Dernière modification le 13/11/17 à 10:10.

          Y a de ça mais c'est aussi plus que seulement le compilateur.
          En fait, dans GNAT Pro, ce qui coûte n'est finalement pas le compilateur en lui-même mais tout ce qui va autour, à savoir, le support technique notamment pour les certifications, les outils développés spécifiquement pour la suite GNAT Pro et les runtimes exotiques.
          Pour avoir une petite idée de ce que cela couvre, voici le tableau comparatif.

          • [^] # Re: adacore et GPL ?

            Posté par . Évalué à 3 (+0/-0).

            Il ne parle pas des sources. Ce qu'il y a "autour" n'a rien de problématique. Mais bon en dessous, il est dit qu'ils reversent leur patch à gcc à la FSF, donc, il n'y a pas de problème.

            "La première sécurité est la liberté"

      • [^] # Re: adacore et GPL ?

        Posté par (page perso) . Évalué à 4 (+5/-0).

        [Disclaimer : je travaille à AdaCore :-)]

        […] reverse ses développements tous les ans dans le code de Gcc, généralement vers juin.

        Pour être précis : dans la mesure du possible, nous essayons de porter nos changements à la FSF (que ce soit pour le front end GNAT, ou nos modifications dans le middle/back end de GCC) de manière régulière tout au long de l’année, pas seulement vers juin.

        • [^] # Re: adacore et GPL ?

          Posté par (page perso) . Évalué à 3 (+1/-0).

          Pour être précis : dans la mesure du possible, nous essayons de porter nos changements à la FSF (que ce soit pour le front end GNAT, ou nos modifications dans le middle/back end de GCC) de manière régulière tout au long de l’année, pas seulement vers juin.

          Merci de la précision Pierre-Marie, ça doit être une légende urbaine qui a la peau dure :D

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.