Introduction à libclang

ou comment créer des outils pour manipuler du code

a marqué ce sujet comme résolu.

Bonjour à tous,

J'ai commencé (il y a 12 minutes) la rédaction d'un tutoriel dont l'intitulé est Introduction à libclang .

J'aimerais obtenir un maximum de retour sur celui-ci, sur le fond ainsi que sur la forme, afin de proposer en validation un texte de qualité.

Si vous êtes intéressé, cliquez ci-dessous

Merci d'avance pour votre aide

Edit : c'est un portage vers zds d'un article initialement sur PdP mais que j'ai aussi mis sur developpez.com Il manque encore les images à rajouter.

+0 -0

Alors j'ai eu le temps de faire une petite passe de lecture, quelques remarques :

Initié par Apple en 2005, il a été rendu open-source en 2007. (…)

Il me semble qu'il s'agit plutôt d'un travail universitaire à la base. LLVM a, il me semble, été a l'origine écrit par un thesard pour illustrer ces travaux de thèses. Il a ensuite été embauché par Apple pour le développer et Apple est de ce fait aujourd'hui la principale entreprise à soutenir LLVM. Mais à la base, ce n'est pas elle qui l'a initié.

Tu mélange parfois allègrement expressions française et anglaise qui n'ont pas été définit avant. Par exemple tu dis "Toujours dans l'objectif de faire un expander de header, on va choisir de le faire une fois toute la translation unit parsée. ". C'est une phrase dur a comprendre (et je parierai pas sur la tournure grammaticale de fin) alors que j'ai déjà un minimum de connaissance du problème que tu étudie.

De manière plus général, la section "Parcours d'AST " est assez complexe a lire et à comprendre. Tu cite plusieurs fonctions et patterns mais on a du mal à voir où, quand et pourquoi ça sert.

Par contre l'explication de l'exemple est beaucoup plus clair et facile a apréhender.

Enfin, pense a mettre à jour les images et ce sera parfait :)

Distinction à faire : LLVM, projet universitaire (dont Chris Lattner était un des principal auteur avant d'être recruté par apple, et clang, frontend C/C++/Objective-C/Objective-C++ initialement écrit par apple en réponse au changement de licence de gcc (GPLv3), des réticences du projet à incorporer les changements d'apple (notamment les évolutions de l'Objective-C) et de la lourdeur de la base de code de gcc.

La technologie du LLVM, elle n'est pas l'invention d'apple, mais apple l'a beaucoup utilisé dans 10.5 pour permettre l'utilisation d'OpenGl sur des cartes graphique n'en supportant parfois pas toute les fonctionnalités, avant d'écrire clang. Pour la date de 2005, il s'agit de la date du début de l'utilisation de LLVM dans Mac OS, clang est né entre 2005 et 2007 mais difficile de savoir quand. Un autre projet à aussi impliqué llvm et gcc, llvm-gcc qui utilisait le frontend de GC sur le LLVM.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte