Version franēaise
Home     About     Download     Resources     Contact us    
Browse thread
[ANN] pfff_visual, a fancy code visualizer/navigator for OCaml, and more
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Yoann Padioleau <padator@w...>
Subject: Re: [Caml-list] [ANN] pfff_visual, a fancy code visualizer/navigator for OCaml, and more

On Sep 25, 2010, at 2:15 PM, Andrei Formiga wrote:

> 
> Hi,

Hi,

> 
> I like the idea of code visualization and would like to try
> pfff_visual. Alas, I'm having trouble building it. The first thing I
> noticed is that the repository bundles versions of all its
> dependencies, apparently. I have most of these installed already
> through GODI, and I didn't look at the makefiles, but does the code
> try to use the system versions of the libraries, if present?

Nope. It is using only library code from external/.

> Right now
> the error I'm seeing seems to be related to ocaml-bdb,

I've updated the git repository to remove the dependency to ocamlbdb (it is used
now only when processing PHP code, which I guess you don't care). Can you pull
again or download the latest version (git clone git://github.com/facebook/pfff.git )
and  use ./configure -nobdb ?

> though I have a
> version installed (and working) through GODI:
> 
> make[2]: Entering directory `/home/andrei/tmp/pfff/external/ocamlbdb'
> ocamlc -c bdb.ml
> File "bdb.ml", line 255, characters 19-30:
> Error: Unbound constructor DB_NOTFOUND

Could you send me bdb.ml  and  /usr/include/db.h ?
Which OS are you using ?

> make[2]: *** [bdb.cmo] Error 2
> make[2]: Leaving directory `/home/andrei/tmp/pfff/external/ocamlbdb'
> make[1]: *** [rec] Error 2
> make[1]: Leaving directory `/home/andrei/tmp/pfff'
> make: *** [all] Error 2
> 
> So maybe this would work if the build could use the version I already
> have installed.
> 
> 
> -- 
> []s, Andrei Formiga
> 
> 
> On Fri, Sep 24, 2010 at 12:08 PM, Yoann Padioleau <padator@wanadoo.fr> wrote:
>> 
>> On Sep 23, 2010, at 11:23 PM, Yoann Padioleau wrote:
>> 
>> Hi list,
>> 
>> It is my pleasure to announce pfff_visual, a code visualizer/navigator
>> for OCaml. Note that this is not a replacement for Emacs or vi, but more a
>> companion that works with Emacs/Vi.
>> 
>> A demo is available here:
>> part1: http://www.youtube.com/watch?v=HRZjBGD3osw
>> part2: http://www.youtube.com/watch?v=993pmNLY_VU
>> 
>> For the people who refuse to vomit while watching a video,
>> here are a few screenshots of the visualizer applied on the linux
>> kernel source, the ocaml source, and the source of pfff itself:
>> http://padator.org/software/pfff/pfff_linux_source.jpg
>> http://padator.org/software/pfff/pfff_ocaml_source.jpg
>> http://padator.org/software/pfff/pfff_ocaml_source2.jpg
>> http://padator.org/software/pfff/pfff_ocaml_source3.jpg
>> http://padator.org/software/pfff/pfff_pfff_source.jpg
>> The screenshots can not show the integration with Emacs though.  You'll have
>> to suffer and watch the videos for that.
>> If you don't have git, you can still download pfff by following this link:
>> http://github.com/facebook/pfff/archives/master
>> 
>> pfff_visual is using pfff, which is mainly an OCaml API to write
>> static analysis, dynamic analysis, code visualizations, code
>> navigations, or style-preserving source-to-source transformations such
>> as refactorings on source code. For now the effort is focused on PHP
>> but there is preliminary support for Javascript, and C++ code.
>> There is also preliminary support for OCaml code so that the infrastructure
>> can be used on the code of pfff itself.
>> 
>> You can get the source of pfff and pfff_visual here:
>> http://github.com/facebook/pfff
>> 
>> Here is how to install it:
>> $ git clone git@github.com:facebook/pfff.git
>> $ ./configure
>> $ make depend; make; make opt
>> $ ./pfff_visual /path/to/project/using/supported/languages
>> 
>> pfff has been tested on MacOS and Linux and is licensed under the LGPL.
>> 
>> Thanks to
>> - Lex Stein for ocamlbdb
>> - Olivier Andrieu for ocamlcairo
>> - Jacques Garrigue for ocamlgtk
>> - Martin Jambon, Mika Illouz and Gert Stolpmann for lib-json
>> - Nicolas Canasse for lib-xml
>> - Jane Street for lib-sexp
>> - Thomas Gazagnaire for dynType
>> - Maas-Maarten Zeeman for OUnit.ml
>> - Thorsten Ohl for xHTML.ml
>> - Sylvain Conchon, Jean-Christophe Filliātre and Julien Signoles for
>>  ocamlgraph
>> - Xavier Leroy for ocamlmpi
>> - Markus Mottl for ocamlpcre
>> - Iain Proctor for ocamlthrift
>> - Guillaume Cottenceau for pleac
>> 
>> 
>> Enjoy.
>> _______________________________________________
>> Caml-list mailing list. Subscription management:
>> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
>> Archives: http://caml.inria.fr
>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>> Bug reports: http://caml.inria.fr/bin/caml-bugs
>> 
>> 
>> _______________________________________________
>> Caml-list mailing list. Subscription management:
>> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
>> Archives: http://caml.inria.fr
>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>> Bug reports: http://caml.inria.fr/bin/caml-bugs
>> 
>> 
>