Slightly generalize case_to_values and case_from_values functions, and
[pspp] / README
1 PSPP is a program for statistical analysis of sampled data. It
2 interprets commands in the SPSS language and produces tabular output
3 in ASCII, PostScript, or HTML format.
4
5 PSPP development is ongoing. It already supports a large subset of
6 SPSS's transformation language.  Its statistical procedure support is
7 currently limited, but growing.
8
9 Instructions for installation are in INSTALL.  Before you install
10 PSPP, you will need to install certain prerequisites:
11
12     * An ANSI C compiler and tool chain.
13
14     * The GNU Scientific Library (libgsl), version 1.6 or later,
15       including libgslcblas included with GSL.
16
17     * Perl, version 5.005_03 or later.  (Perl is required during build
18       but not after installation.)
19
20     * pkg-config (only if you need to regenerate configure after
21       modifying configure.ac).
22
23     * iconv, which should be installed as part of a Unix-like system.
24       If you don't have a version already, you can install GNU
25       libiconv (http://www.gnu.org/software/libiconv/).
26
27     * Optional: libncurses.  Without it, PSPP will assume it is
28       running in an 80x25 terminal.
29
30     * Optional: libreadline and libhistory.  Without them, interactive
31       command editing and history features will be disabled.
32
33     * Optional: libplot (from GNU plotutils).  Without it,
34       graphing features will not work.  If you do not have it
35       installed, you must run `configure' with --without-libplot.
36
37     * Optional: GTK+ version 2.6.0 or later (2.10.2 or later is 
38       recommended), plus libglade 2.0 or later.  Without them, the 
39       GUI will not be built.  If you do not have these installed, you 
40       must run `configure' with --without-gui.
41
42     * Optional: Texinfo 4.7 or later, if you want to build the
43       documentation in PostScript or PDF format.
44
45 For information on differences from previous versions, please see file
46 NEWS.  Full documentation on PSPP's language can be found in the doc/
47 directory.
48           
49 Source code for the latest release of PSPP is available at
50 ftp://ftp.gnu.org/pub/gnu/pspp/.  Older versions may be obtained from
51 ftp://alpha.gnu.org/gnu/pspp/.  Development sources are available from
52 CVS at http://savannah.gnu.org/projects/pspp
53    
54 Questions and comments about using PSPP may be sent to pspp-users@gnu.org.
55 Bug reports may be filed at http://savannah.gnu.org/bugs/?group=pspp
56 or emailed to bug-gnu-pspp@gnu.org.  (We prefer the web-based system
57 because it makes it more difficult for us to lose track of bugs.)
58
59 The long term goals for PSPP are ambitious.  We wish to provide the
60 following support to users:
61
62         * All of the SPSS transformation language.  PSPP already
63           supports a large subset of it.
64
65         * All the statistical procedures that someone is willing to
66           implement, whether they exist in SPSS or not.  Currently,
67           statistical support is limited, but growing.
68
69         * Compatibility with SPSS syntax, including compatibility with
70           known bugs and warts, where it makes sense.  We also provide
71           an "enhanced" mode in certain cases where PSPP can output
72           better results that may surprise SPSS users.
73
74         * Friendly textual and graphical interfaces.  PSPP does not do
75           a good job of this yet.
76
77         * Attractive output, including graphs, in a variety of human-
78           and machine-readable formats.  PSPP currently produces
79           output in ASCII, PostScript, and HTML formats.  We will
80           enhance PSPP's output formatting in the future.
81
82         * Good documentation.  Currently the PSPP manual describes its
83           language completely, but we would like to add information on
84           how to select statistical procedures and interpret their
85           results.
86
87         * Efficient support for very large data sets.  For procedures
88           where it is practical, we wish to efficiently support data
89           sets many times larger than physical memory.  The framework
90           for this feature is already in place, but it has not been
91           tuned or extensively tested.
92
93 Over the long term, we also wish to provide support to developers who
94 wish to extend PSPP with new statistical procedures, by supplying the
95 following:
96
97         * Easy-to-use support for parsing language syntax.  Currently,
98           parsing is done by writing "recursive descent" code by hand,
99           with some support for automated parsing of the most common
100           constructs.  We wish to improve the situation by supplying a
101           more complete and flexible parser generator.
102
103         * Easy-to-use support for producing attractive output.
104           Currently, output is done by writing code to explicitly fill
105           in table cells with data.  We should be able to supply a
106           more convenient interface that also allows for providing
107           machine-readable output.
108
109         * Eventually, a plug-in interface for procedures.  Over the
110           short term, the interface between the PSPP core and
111           statistical procedures is evolving quickly enough that a
112           plug-in model does not make sense.  Over the long term, it
113           may make sense to introduce plug-ins.