table of contents
CAMLP4(1) | General Commands Manual | CAMLP4(1) |
NOM¶
camlp4 - Pre-Processor et Pretty-Printer pour Objective
Caml
mkcamlp4 - Crée un exécutable camlp4
ocpp - Pre-Processor Universel
SYNOPSIS¶
camlp4 [ load-options ] [--] [ other-options ]
camlp4o [ load-options ] [--] [ other-options ]
camlp4r [ load-options ] [--] [ other-options ]
camlp4o.cma
camlp4r.cma
mkcamlp4
ocpp [ load-options ] file
camlp4o.opt [--] [ other-options ]
camlp4r.opt [--] [ other-options ]
DESCRIPTION¶
camlp4 est un Pre-Processor-Pretty-Printer pour Objective Caml, analysant un fichier source et affichant le resultat sur la sortie standard. Il offre des outils syntaxiques (grammaire) et la possibilité de modifier la syntaxe concrète du langage (citations, extensions de syntaxe).
camlp4o et camlp4r sont des versions de camlp4 avec quelques fichiers déjà chargés (voir ci-dessous).
camlp4o.cma et camlp4r.cma sont les fichiers à charger dans le toplevel d'ocaml pour utiliser les machines camlp4.
mkcamlp4 kcamlp4 crée les exécutables camlp4 avec presque les mêmes options que l'ocamlmktop (voir ci-dessous).
ocpp est un préprocesseur universel, affichant tout genre de fichier texte.
camlp4o.opt et camlp4r.opt sont des versions de camlp4o et de camlp4r compilés avec le compilateur ocamlopt code natif. Ils sont plus rapides mais non extensibles. Et ils ne sont pas disponibles dans toutes les installations de camlp4.
OPTIONS¶
Les options de charge choisissent d'analyser et d'imprimer des actions enregistrées dans les fichiers d'exécution d'OCaml (finissant par .cmo or .cma). Elles doivent précéder d'autres options
Un falcutatif -- peut mettre fin aux options de charge.
- -I directory
- ajoute directory dans l'url de recherche pour les fichiers chargés. À moins que l'option -nolib ne soit utilisée, la repertoire de la bibliothèque camlp4 doit être ajouté à la recherche. Noter qu'il n'y a aucune recherche automatique dans l'annuaire courant : ajouter " - I. " pour ceci.
- -where
- Affiche le nom du répertoire de la bibliothèque camlp4 puis quitte.
- -nolib
- Aucune recherche automatique des fichiers d'exécution dans le répertoire de la bibliothèque camlp4.
- object-file
- Charge object-file dans le noyau camlp4.
AUTRES OPTIONS¶
Les autres options sont :
- file
- Traiter file comme fichier d'interface s'il finit avec .mli et comme fichier d'exécution s'il finit avec .ml.
- -intf file
- Traiter file comme fichier d'interface quelle que soit son extension.
- -impl file
- Traiter file comme fichier d'exécution quelle que soit son extension.
- -unsafe
- Genère un accès non sécurisé de tableau et de chaîne de caractères.
- -noassert
- Ne pas compiler les vérifications.
- -verbose
- Détailler les erreurs d'analyse.
- -QD file
- efface file en cas d'erreur de syntaxe dans le résultat d'une expansion de citation.
- -o out-file
- Affiche le resultat dans out-file au lieu de la sortie standard. Le fichier est ouvert avec open_out_bin (voir la bibliothèque Pervasives d'OCaml).
- -v
- Affiche le numéro de la version et quitte.
- -help
- Affiche les options disponibles et quitte. Cette copie inclut les options probablement supplémentaires pour les fichiers d'exécution chargés
Les autres options peuvent être étendues avec les fichiers objets chargés. Les fichiers fournis ajoutent les options suivantes :
- -l line-length
- Ajoute avec pr_o.cmo and pr_r.cmo: fixe la taille de ligne (par defaut 78).
- -sep string
- Ajoute avec pr_o.cmo and pr_r.cmo: affiche le mot entre expressions au lieu de commentaires.
- -no_ss
- Ajoute avec pr_o.cmo : n'affiche pas les doublons
- -D ident
- Ajoute avec pa_macro.cmo : définit une macro.
- -U ident
- Ajoute avec pa_macro.cmo: supprime une macro.
FICHIERS FOURNIS¶
Ces fichiers sont installés dans /usr/lib/ocaml/3.09.2/camlp4.
fichiers analysés :
pa_o.cmo : syntaxe d'OCaml pa_op.cmo : flux et parsers pa_oop.cmo : flux et parsers (avec code optimise) pa_r.cmo : syntaxe révisée pa_rp.cmo : flux et parsers pa_extend.cmo : extension de la syntaxe pour des grammaires pa_extfold.cmo : extension de pa_extend avec FOLD0 et FOLD1 pa_extfun.cmo : extension de la syntaxe pour les fonctions extensibles pa_fstream.cmo: extension de la syntaxe pour les flux functionels pa_macro.cmo: ajoute les macros (ifdef, define) voulu pour C pa_lefteval.cmo: évaluation gauche droite des paramètres pa_olabl.cmo: ancienne syntaxe pour les labels
fichiers d'impression:
pr_o.cmo: syntaxe d'OCaml pr_op.cmo: essaie de reconstruire les flux et la syntaxe parsée pr_r.cmo: syntaxe révisée pr_rp.cmo: essaie de reconstruire les flux et la syntaxe parsée pr_extend.cmo: essaie de reconstruire les états etendus pr_extfun.cmo: essaie de reconstruire les états extérieurs pr_dump.cmo: arbre de syntaxe pr_depend.cmo: dépendances de fichiers pr_null.cmo: aucun affichage
Quotations expansés:
q_MLast.cmo: syntaxe de noeuds d'arbre q_phony.cmo: garde les quotations pour le formatage
La commande camlp4o est un raccourci pour :
camlp4 pa_o.cmo pa_op.cmo pr_dump.cmo
La commande camlp4r est un raccourci pour :
camlp4 pa_r.cmo pa_rp.cmo pr_dump.cmo
Le fichier camlp4o.cma peut être chargé dans le toplevel pour utiliser camlp4 avec la syntaxe OCaml.
Le fichier camlp4r.cma peut être chargé dans le toplevel pour utiliser camlp4 avec la syntaxe révisée.
MKCAMLP4¶
mkcamlp4 Crée les exécutables camlp4 avec presque les mêmes option que ocamlmktop. La seule différence est que les interfaces, pour être visibles, doivent être explicitement ajoutées dans la ligne de commande en tant que fichiers ".cmi". Par exemple, comment ajouter le module "str" de OCaml :
mkcamlp4 -custom str.cmi str.cma -cclib -lstr \ -o camlp4str
FICHIERS¶
Répertoire de la bibliothèque Camlp4 pour une
installation courante :
/usr/lib/ocaml/3.09.2/camlp4
VOIR AUSSI¶
ocaml(1), ocamlc(1)
Camlp4 - tutorial
Camlp4 - reference manual
AUTEUR¶
Daniel de Rauglaudre, INRIA Rocquencourt.
TRADUCTION¶
Ce document est une traduction, réalisée par Velleine Jerome, velleine.jerome@wanadoo.fr, le 05/04/07.
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.
La version anglaise la plus à jour de ce document est toujours consultable via la commande : LANGUAGE=en man camlp4.
N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.
INRIA |