##---------------------------------------------------------------------------- ## File: README ## Author(s): Tobias Lindahl <tobias.lindahl@it.uu.se> ## Kostis Sagonas <kostis@it.uu.se> ## ## Copyright: Held by the authors; all rights reserved (2004 - 2010). ##---------------------------------------------------------------------------- The DIALYZER, a DIscrepancy AnaLYZer for ERlang programs. ----------------------------------------------- -- -- Starting the Dialyzer -- ----------------------------------------------- You can use Dialyzer either in its GUI mode, simply by: ./dialyzer or in its command-line mode, as e.g. by: ./dialyzer -r OTP_DIR/lib/inets which analyzes all the bytecode (.beam) files of the "inets" application of the Erlang/OTP installation for discrepancies. The complete set of Dialyzer options is: dialyzer [--help] [--version] [--shell] [--quiet] [--verbose] [-pa dir]* [--plt plt] [-Ddefine]* [-I include_dir]* [--output_plt file] [-Wwarn]* [--src] [-c applications] [-r applications] [-o outfile] [--build_plt] [--add_to_plt] [--remove_from_plt] [--check_plt] [--plt_info] [--get_warnings] Use "dialyzer --help" to see an explanation of these options as well as a description of the various options to turn on or suppress certain types of warnings (for the latter only type "dialyzer -Whelp"). The Persistent Lookup Table =========================== Most Dialyzer uses require information about functions in the Erlang/OTP standard libraries. This information is stored in a Persistent Lookup Table (PLT) and is the starting point for later analyses. Before the first use of Dialyzer, the PLT needs to be built explicitly by the user using a command of the form: dialyzer --build_plt -r lib/kernel/ebin lib/stdlib/ebin ... OTHER LIBS At each subsequent startup of Dialyzer the validity of this PLT is checked, and if something has changed in the libraries and applications that were included in it when the PLT was initially created, the PLT will be rebuilt. It is possible to have multiple PLTs and select dynamically among them. It is also possible to build PLTs incrementally. For more information refer to the documentation of the relevant options. ----------------------------------------------- -- -- More information about using the Dialyzer -- ----------------------------------------------- Start up the Dialyzer and click on its Help menu (in the upmost right corner) to read a brief overview and a user manual. ----------------------------------------------- -- -- Feedback & bug reports -- ----------------------------------------------- We welcome all sorts of user feedback (even wish-lists!). If you notice something weird, please send an error report describing the symptoms and how to reproduce them to: tobias.lindahl@it.uu.se, kostis@it.uu.se