Re: Un nouveau langage

Jean-Baptiste BRIAUD -- Novlog <[email protected]>
Newsgroups gmane.comp.java.french.general
Message-ID <[email protected]>
On 2 sept. 2010, at 18:52, Hervé Agnoux wrote:

> Le jeudi 2 septembre 2010, Jean-Baptiste BRIAUD -- Novlog a écrit :
>> Oui, c'est une idée très intéressante. Je ne m'étais jamais intéressé 
>> YAML... Comment se traduirait l'exemple de l'application de test en YAML ?
>> Je suis un peu perplexe ... "application" :
>> - lang : fr
>> - name : "Application exemple de test"
>> 
>> Pourquoi "application" : ?
>> Pourquoi pas application : (sans les guillemets) ?
>> 
> 
> Et pourquoi mettre des guillements :-)
> 
> Je pense que ça se traduirait par 
> 
> application: 
> lang: fr
> name: Application exemple de test
> # Merci YAML.
> 

OK pour les guillemets, c'est donc encore plus simple !
sinon, ne faut-il pas quelques espaces ?

application: 
   lang: fr
   name: Application exemple de test

J'ai l'impression que sinon, lang et name seraient à la racine et non pas dans application.
Si oui, combien d'espace ? J'en ai mis 3 ici ...

> 
> Tu peux consulter la page wikipedia (dont j'ai été un des modestes 
> contributeurs) à http://fr.wikipedia.org/wiki/Yaml ou mieux le site, rédigé 
> direct en YAML à http://www.yaml.org
> 

J'ai lu avec intérêt. J'aime beaucoup la possibilité d'avoir des pointeurs.

> 
>> De fait, les principaux IDE comprennent YAML, je n'aurais donc pas besoin
>> pour un support de base de développer quoi que ce soit pour avoir un IDE.
>> Cependant, y a t-il l'équivalent d'une DTD en YAML ?
>> Nous sommes donc avec YAML avec une syntaxe générique, c'est qui est un bon
>> point. De plus, c'est lisible et agréable, autre bon point.
>> Mais comment valider un fichier ?
>> 
> 
> Il y a bien http://www.yaml.org/spec/1.2/spec.html#Schema, mais je ne suis pas 
> sûr que quelqu'un l'ai lu ou compris (pas moi). Mais c'est hyper pratique 
> comme format.
> 
> Il y a aussi que tu peux préciser le type de tes valeurs par !!
> 
> a: !!float 36  # "a" est un float, évidemment
> b: !!str 36  # ici un string.
> 

A priori, je n'aurais pas besoin de cet aspect de YAML, mais tout n'est pas figé, prudence, çà pourrait servir un jour :-)

> Et tu peux définir tes propres types avec un ! Voir la doc.
> 
> 
>> Je devrais forcement me faire un lexer/parser, et il en existe en Java un
>> équivalent de SAX ou DOM, je ne sais pas encore. C'est un autre bon point.
>> 
> 
> J'utilise http://code.google.com/p/snakeyaml/ qui comporte un truc pour 
> serializer des objets java, c'est bien pour s'auto-former aux subtilités du 
> Yaml.
> 

Je vais regarder, avec aussi ceux deux là :
http://jyaml.sourceforge.net/
http://yamlbeans.sourceforge.net/

Si tu sais déjà pourquoi snakeyaml est meilleur, n'hésite pas ... :-)

> 
>> Cependant, je ne trouve pas de concept de DTD pour valider automatiquement
>> un fichier YAML sans passer par du code maison ... le principe d'une DTD
>> quoi ... Une idée ?
>> 
>> Qu'en pensez-vous d'un langage défini en YAML ?
>> Programmeriez-vous avec un langage défini en YAML ?
> 
> La syntaxe n'est pas tout, hein :-)

Tout à fait. Disons qu'une bonne syntaxe est nécessaire mais pas suffisant.
D'où mes questions, car une mauvaise syntaxe peut tout gâcher.

> 
> En tous les cas Yaml est plus utilisable que JSon pour ce genre de choses, car 
> il contient un système de référence.
> 

Oui, nous utilisons déjà JSON pour de la sérialisation et le constat est très clair : c'est pas lisible, sauf s'il le faut vraiment pour débugger, mais je ne voudrais pas coder en JSON.

> 
>> Si comme moi vous ne connaissez pas YAML, l'aprendriez-vous si le langage
>> vous semble intéressant ? Autrement dit, en choisissant YAML, ne mets-on
>> pas une barrière à l'appropriation d'un langage ? Est-ce que YAML est bien
>> "diffusé" dans le monde Java ?
>> 
> 
> Yaml est intéressant par lui même. Son gros point noir je trouve est que 
> certains aspects de la spec sont obsurs pour moi, mais peut être cela va 
> s'arranger ?

Je n'ai pas encore tout compris non plus, mais je suis plutôt séduit pour l'instant.

> 
> Une page intéressante aussi est 
> http://en.wikipedia.org/wiki/Comparison_of_data_serialization_formats

Merci pour le lien, c'est en effet très interessant.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.