Version française
Home     About     Download     Resources     Contact us    
Browse thread
Grammaires et pretty print
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Daniel de Rauglaudre <daniel.de_rauglaudre@i...>
Subject: Re: Grammaires et pretty print
[English version further]

> J'ai une  question sur les  grammaires et le pretty-print. Chaque fois
> que je doit debugger un programme, je suis toujours plus ou moin amene
> a definir des pretty printer
> ...
> De tels outils n'existent pas. Il doit y  avoir une bonne raison, quel
> est le point que j'ai loupe ??

Le problème est que ça marche bien pour les grammaires simples. Dès
que ça se complique un peu, ça ne marche plus aussi bien. En plus, pour
peaufiner le truc, il faut ajouter des directives de pretty print
(ajouter des blancs, des breaks, etc).

Néanmoins, je suis d'accord, personnellement, quand je fais un pretty
printer, et en particulier ceux de Camlp4, pr_o et pr_r, je les
écrits symétriquement des parseurs (mais manuellement), en reprenant
les mêmes noms de fonctions. C'est bien pratique. Mais, à mon sens, je
trouve que ça ne s'automatise pas très bien.

Avant tout, il manque peut-être déjà une couche au dessus de Format,
par exemple de la syntaxe pour ce module. J'ai ça dans un coin. Mais,
comme je n'utilise pas Format dans mes pretty prints de Camlp4, je
n'ai pas eu l'occasion de la bien tester.

----------

[Question why there are no automatic pretty printers provided with
grammars camlyacc and Camlp4]

The problem is that it works well for simple grammars. When they
become more complicate, it is not so easy. Moreover, when you want to
ameliorate the thing, you have to add directives of pretty print
(spaces, breaks, etc).

I agree with you: personnally, when I make pretty printers, e.g. those
of Camlp4, pr_r and pr_o, I write them symmetrically of the parsers
(but manually), with the same names for the functions. It is Ok. But,
according to me, I think it is difficult to automaticize.

First, I think that a layer above Format is missing, for example some
syntax for this module. I wrote something. But, because I do not use
Format for my pretty printers of Camlp4, I did not test this syntax
much.

--------------------------------------------------------------------------
 Daniel de RAUGLAUDRE

 Projet Cristal - INRIA Rocquencourt
 Tel: +33 (01) 39 63 53 51
 Email: daniel.de_rauglaudre@inria.fr
 Web: http://pauillac.inria.fr/~ddr/
--------------------------------------------------------------------------