./lang/camlp5, Camlp5 is a preprocessor-pretty-printer of ocaml

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 6.07, Package name: camlp5-6.07, Maintainer: tonio

Camlp5 is a preprocessor and pretty-printer for OCaml programs. It also
provides parsing and printing tools.

As a preprocessor, it allows to:
- extend the syntax of OCaml,
- redefine the whole syntax of the language.
As a pretty printer, it allows to:
- display OCaml programs in an elegant way,
- convert from one syntax to another,
- check the results of syntax extensions.
Camlp5 also provides some parsing and pretty printing tools:
- extensible grammars
- extensible printers
- stream parsers and lexers
- pretty print module
It works as a shell command and can also be used in the OCaml toplevel.


Required to run:
[lang/ocaml]

Master sites:

SHA1: a6b52e533e7062845a0a45dda097cb2eff52b928
RMD160: c75a388dc284ae8bd7368dc2b77c8512cba5b52e
Filesize: 666.878 KB

Version history: (Expand)


CVS history: (Expand)


   2012-10-09 12:24:44 by Jaap Boender | Files touched by this commit (2) | Package updated
Log message:
Updated camlp5 to 6.07, for compatibility with current ocaml version. Changes
include:

* [12 Sep 12] Added compatibility with OCaml 4.00.1.
* [06 Jun 12] Fixed bug: open record patterns {a=b;c=d;_} did not work.
   2012-10-09 03:41:59 by Krister Walfridsson | Files touched by this commit (1)
Log message:
Correct BUILDLINK_ABI_DEPENDS.camlp5 to say 6.06 instead of 6.06nb1.
   2012-10-08 17:31:14 by Jaap Boender | Files touched by this commit (5) | Package updated
Log message:
Updated lang/camlp5 to its latest version. Changes from the old version include:

Camlp5 Version 6.06:
--------------------

* [01 Jun 12] Added compatibility with OCaml 4.00.0 and (incoming) 4.01.0.
* [18 Mar 12] Fixed bug in pr_o: [(let module M = ... in x); y] was
  displayed without parentheses.
* [14 Mar 12] Added compatibility with OCaml 3.12.2.
* [02 Mar 12] Added compatibility with JoCaml 3.12.0 and 3.12.1.
* [02 Mar 12] Completed with all JoCaml statements in ocaml syntax.
  Todo: pretty print.

Camlp5 Version 6.05:
--------------------

* [02 Mar 12] Added compatibility with JoCaml trunk.
* [02 Mar 12] Added option -oname in configure to change ocaml
  command name. The bytecode compiler, native compiler and bytecode
  runtime are respectively <oname>c, <oname>opt and <oname>run.
  The default is 'ocaml', implying that the executables are ocamlc,
  ocamlopt and ocamlrun. Setting it to 'jocaml', fo example, use
  jocamlc, jocamlopt and jocamlrun.

Camlp5 Version 6.04:
--------------------

* [01 Mar 12] Added option -name in configure to change command name
  useful to have transitional and strict versions installed with
  different names. Default: camlp5.
* [01 Mar 12] The default mode at configuration time is now 'strict'.

Camlp5 Version 6.03:
--------------------

* [09 Jan 12] Updated compatibility with OCaml trunk version (3.13.0).

Camlp5 Version 6.02.3:
----------------------

* [20 Oct 11] Updated compatibility with OCaml current version 3.13.0.
* [20 Sep 11] Added missing syntax "_" in ending patt records (rev: \ 
"_ = _").
ep 11] Fixed bug pattern -1L was refused in normal syntax.
* [21 May 11] Fixed bug impacting files using q_ast.cmo extension (bad ast).
* [03 May 11] Fixed bug: lexeme errors in revised syntax + utf8.
* [24 Mar 11] Fixed bug: M.(a+b) was refused in normal syntax.
* [16 Mar 11] Fixed bug: incorrect compilation of label patterns of the
  form ~a:b (or ~{a = b} in revised syntax) in class declarations.
* [16 Mar 11] Fixed bug: error while printing label patterns ~a:b with
  pr_o.cmo (error message "labels not pretty printed (in patt)").

Camlp5 Version 6.02.2:
----------------------

* [15 Mar 11] Fixed bug: bad AST generated for class identifier prefixed
  by a module.
* [15 Mar 11] Fixed differences of locations between OCaml and camlp5o (e.g.
  in .annot files)
* [17 Feb 11] Pretty module now considers strings as utf8 encoded (impacts
  computation of strings lengths).
* [04 Feb 11] Revised syntax: completed syntax multi labels, ~{x=y; z=t}
  (equivalent to ~{x=y} ~{z=t}) in patterns (in 6.02.1 was implemented
  only in expressions).
* [28 Jan 11] Added installed module 'Reloc': relocations and equalities
  over syntax trees.
* [26 Jan 11] Fixed bug in camlp5o.opt: did not accept '$' as token.
* [18 Jan 11] Fixed bug: private flags in type manifest were not correctly
  treated.
* [06 Dec 10] Fixed bug in pr_o.cmo: label expressions were not correctly
  pretty printed: f ~a gave f a.

Camlp5 Version 6.02.1:
----------------------

* [05 Dec 10] In module Grammar.Entry.print, added extra parameter ppf
  to print in other formatter than (the default) stdout.
* [21 Nov 10] Revised syntax: added syntax multi labels, ~{x=y; z=t}
  equivalent to ~{x=y} ~{z=t}
* [16 Nov 10] Updated compatibility with OCaml version 3.13.0-gadt.

Camlp5 Version 6.02:
--------------------

* [12 Nov 10] Added compatibility with OCaml GADT version.
* [12 Nov 10] pa_macro: added ability to use ELSIFDEF in match cases (the
  ending ELSE part being still optional).
* [08 Nov 10] Fixed bugs 1/ in pa_o: !Foo.bar was interpreted as (!Foo).bar
  instead of !(Foo.bar) 2/ in top/camlp5_top.cma: the file ast2pt.cmo was
  missing.

Camlp5 Version 6.01:
--------------------

* [03 Nov 10] Added in revised syntax for labels ~{lab x = y} as shortcut
  for ~{lab = fun x -> y}.
* [30 Oct 10] Fixed bug in 'configure': option -libdir did not work.

Camlp5 Version 6.00:
--------------------

* [28 Oct 10] Updated compatibility with OCaml trunk version (3.13.0).
* [01 Oct 10] Make compilation with "make -j" (parallel make) work.
* [29 Sep 10] Fixed bug when using constructors named 'True' and 'False'.
* [24 Sep 10] Fixed many bugs of parsing comments (typically about quotes).
* [23 Sep 10] Fixed bug in pretty printing comments containing '"'.
* [22 Sep 10] Fixed bug bad result of unary minus functions.
* [22 Sep 10] Fixed bug in printing parameters of types of 'with constraint'.
* [22 Sep 10] Fixed bug in revised syntax for class_types. Now application.
  does not need parenthesis any more (like for other entries of that kind).
* [19 Sep 10] In grammars, added list with separator with optional ending
  separator (LIST0 .. SEP OPT_SEP and LIST1 .. SEP OPT_SEP).
* [19 Sep 10] Completed missing statements in particular in objects,
  classes, and first class modules.
* [08 Sep 10] Added option '-flag O' of pr_r.cmo and pr_o.cmo which
  add location comments in the output.
* [08 Sep 10] Added new chapters in the documentation:
     - Directives
     - Redefining OCaml syntax
* [08 Sep 10] Fixed option '-flag E' (equilibrate cases) of pr_r.cmo and
  pr_o.cmo which did not work.
* [06 Sep 10] Changed revised syntax of 'inherit something [params]'
  into 'inherit [params] something' (like in normal syntax).
* [06 Sep 10] Added missing statements:
    - 'module type of' as module type,
    - '(module ... : ...)' as expression,
    - '(val ...)' ('value' in revised syntax) as module expression.
* [02 Sep 10] Added directive "#option" (in files, not in toplevel).
* [02 Sep 10] pa_macro.cmo: phrases inside IFDEF statements now are
  implementation or interface items, which means:
    - ability to use directives which are, therefore, conditional.
    - in revised syntax must end with semicolon (incompatibility with
      previous versions of Camlp5 where these semicolons are syntax
      errors).
    - in revised syntax, ability to put several phrases without having
      to use "declare .. end".
* [30 Aug 10] pa_macro.cmo: added ability to use ELSIFDEF and ELSIFNDEF
  in expressions, structure items and signature items.
* [27 Aug 10] Fixed bug in pa_macro.cmo A AND B computed B AND B.
* [26 Aug 10] Fixed wrong behaviour: char '"' was printed '\"'.
* [25 Aug 10] Added option -no-opt in configure, not to use .opt versions
  of OCaml compilers.
* [20 Aug 10] Added compatibility for OCaml version 3.11.3.
* [18 Aug 10] Added function "get" in library module "Ploc", \ 
and a
  statement "lprintf" similar to "pprintf" added by the syntax
  extension kit "pa_pprintf.cmo".
   2012-10-03 23:59:10 by Thomas Klausner | Files touched by this commit (2798)
Log message:
Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
   2012-10-02 22:11:57 by Aleksej Saushev | Files touched by this commit (187)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
   2012-05-07 03:54:16 by David A. Holland | Files touched by this commit (473)
Log message:
Set BUILDLINK_ABI_DEPENDS correctly (with +=, not ?=)
It turns out there were a lot of these.
   2011-12-06 01:19:26 by Steven Drake | Files touched by this commit (42)
Log message:
Recursive bump for lang/ocaml buildlink addition.
   2010-10-11 23:27:54 by Antoine Reilles | Files touched by this commit (2) | Package updated
Log message:
Update lang/camlp5 to 5.15
This version is compatible with the ocaml 3.12.0 in tree

Fix pkg/43956 and pkg/43957

Changes:
Camlp5 Version 5.15:
* [09 Aug 10] Updated compatibility for OCaml current version 3.12.1.
* [09 Aug 10] Upgraded compatibility for OCaml released version 3.12.0.
* [29 Jul 10] Added ability to write AST quotations with a colon before
  the '<' (e.g. "<:expr:< foo >>") which, in pattern \ 
position, generates
  a binding of the variable "loc" at the top node:
    1/ normal usage (still working):
         "fun [ <:expr< x >> -> 0 ]"
       which is equivalent to:
         "fun [ MLast.ExLid _ (Ploc.VaVal "x") -> 0 ]
    2/ new usage:
         "fun [ <:expr:< x >> -> 0 ]"
       which is equivalent to:
        "fun [ MLast.ExLid loc (Ploc.VaVal "x") -> 0 ]
* [21 Jun 10] Added compatibility for OCaml trunk version 3.13.0.
* [29 Apr 10] Fixed bug in pr_depend.cmo: a.B.c did not add module B.

Camlp5 Version 5.14:
* [28 Apr 10] Updated compatibility for OCaml current version 3.12.0.
* [31 Mar 10] Fixed bug in pr_o.cmo: error message when using "#use"