pspp-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-commits] [SCM] GNU PSPP branch, master, updated. v0.6.1-279-gcc57a


From: Ben Pfaff
Subject: [Pspp-commits] [SCM] GNU PSPP branch, master, updated. v0.6.1-279-gcc57a28
Date: Wed, 07 Jan 2009 14:10:55 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU PSPP".

The branch, master has been updated
       via  cc57a28ef6796ae9a64ef80d453f72126956d49d (commit)
      from  9bf1c33953f7feff2a24a06293f6fe96b75cc41a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit cc57a28ef6796ae9a64ef80d453f72126956d49d
Author: Ben Pfaff <address@hidden>
Date:   Tue Jan 6 23:17:32 2009 -0800

    Make cases simpler, faster, and easier to understand.
    
    Cases (struct ccase) is reference-counted to avoid copying more
    data than necessary.  But the existing implementation that uses
    separate structures for references to cases (struct ccase) and
    the cases themselves (struct case_data) has a number of issues:
    
       - The semantics of struct ccase are tricky to remember; one
         has to remember to treat struct ccase as essentially a
         pointer type.  I get confused sometimes myself.
    
         (One of the symptoms of this was the existence of
          the case_nullify and case_is_null functions, which are
          exactly analogous to setting a pointer to null and comparing
          one against null, respectively.)
    
       - Every reference to data in a case involves two levels of
         indirection, which is one more than actually necessary.
    
       - The implementation is somewhat complicated.
    
    This commit simplifies things, by dropping a level of indirection.
    Now, a case is just a pointer to a struct ccase, which contains
    the actual data.  Reference counting is still present, but it is
    simplified.  The only thing that must be remembered is that, before
    modifying a case that may be shared, it must be passed through
    case_unshare() to make a new unshared copy if necessary.

-----------------------------------------------------------------------

Summary of changes:
 src/data/case-map.c                     |   43 +++--
 src/data/case-map.h                     |    5 +-
 src/data/case-matcher.c                 |   16 +-
 src/data/case-matcher.h                 |    4 +-
 src/data/case-tmpfile.c                 |   24 +-
 src/data/case-tmpfile.h                 |    7 +-
 src/data/case.c                         |  375 ++++++++++++-------------------
 src/data/case.h                         |  125 ++++++++--
 src/data/casegrouper.c                  |   24 +-
 src/data/caseinit.c                     |    5 +-
 src/data/casereader-filter.c            |   26 +-
 src/data/casereader-provider.h          |   75 ++++---
 src/data/casereader-translator.c        |   73 +++----
 src/data/casereader.c                   |  111 +++++-----
 src/data/casereader.h                   |   12 +-
 src/data/casewindow.c                   |   55 ++---
 src/data/casewindow.h                   |    6 +-
 src/data/casewriter-provider.h          |    5 +-
 src/data/casewriter-translator.c        |   29 ++-
 src/data/casewriter.c                   |   19 +-
 src/data/casewriter.h                   |    7 +-
 src/data/datasheet.c                    |   84 ++++----
 src/data/datasheet.h                    |    6 +-
 src/data/gnumeric-reader.c              |   38 ++--
 src/data/lazy-casereader.c              |   16 +-
 src/data/por-file-reader.c              |   22 +-
 src/data/por-file-reader.h              |    3 +-
 src/data/por-file-writer.c              |    4 +-
 src/data/por-file-writer.h              |    3 +-
 src/data/procedure.c                    |   69 +++----
 src/data/procedure.h                    |    4 +-
 src/data/psql-reader.c                  |   29 +--
 src/data/scratch-reader.h               |    3 +-
 src/data/scratch-writer.c               |   13 +-
 src/data/scratch-writer.h               |    3 +-
 src/data/sparse-cases.c                 |  110 ++++++----
 src/data/subcase.c                      |    6 +-
 src/data/sys-file-reader.c              |   26 +-
 src/data/sys-file-reader.h              |    3 +-
 src/data/sys-file-writer.c              |   15 +-
 src/data/sys-file-writer.h              |    3 +-
 src/data/transformations.c              |    7 +-
 src/data/transformations.h              |    9 +-
 src/language/control/do-if.c            |    9 +-
 src/language/control/loop.c             |   27 ++-
 src/language/data-io/combine-files.c    |   99 ++++----
 src/language/data-io/data-list.c        |   11 +-
 src/language/data-io/data-parser.c      |   29 ++-
 src/language/data-io/inpt-pgm.c         |   31 ++--
 src/language/data-io/list.q             |   22 +-
 src/language/data-io/print-space.c      |    6 +-
 src/language/data-io/print.c            |    6 +-
 src/language/data-io/save.c             |   10 +-
 src/language/expressions/evaluate.c     |   15 +-
 src/language/expressions/operations.def |   10 +-
 src/language/stats/aggregate.c          |   49 ++---
 src/language/stats/autorecode.c         |   20 +-
 src/language/stats/binomial.c           |   12 +-
 src/language/stats/chisquare.c          |   22 +-
 src/language/stats/crosstabs.q          |   27 ++-
 src/language/stats/descriptives.c       |   36 ++--
 src/language/stats/examine.q            |   56 +++---
 src/language/stats/flip.c               |   31 ++--
 src/language/stats/frequencies.q        |   17 +-
 src/language/stats/glm.q                |   15 +-
 src/language/stats/npar-summary.c       |   12 +-
 src/language/stats/oneway.q             |   19 +-
 src/language/stats/rank.q               |   24 +-
 src/language/stats/regression.q         |   42 ++--
 src/language/stats/reliability.q        |   10 +-
 src/language/stats/t-test.q             |   27 ++-
 src/language/stats/wilcoxon.c           |   40 ++--
 src/language/tests/datasheet-check.c    |   32 ++--
 src/language/tests/datasheet-check.h    |    6 +-
 src/language/xforms/compute.c           |   48 +++--
 src/language/xforms/count.c             |   19 +-
 src/language/xforms/fail.c              |    6 +-
 src/language/xforms/recode.c            |    9 +-
 src/language/xforms/sample.c            |    4 +-
 src/language/xforms/select-if.c         |    6 +-
 src/math/levene.c                       |   12 +-
 src/math/merge.c                        |   13 +-
 src/math/np.c                           |   16 +-
 src/math/order-stats.c                  |   26 +--
 src/math/sort.c                         |   45 ++--
 src/ui/gui/psppire-data-editor.c        |   33 ++--
 src/ui/gui/psppire-data-store.c         |   29 +--
 src/ui/gui/psppire-data-store.h         |    7 +-
 88 files changed, 1287 insertions(+), 1280 deletions(-)


hooks/post-receive
--
GNU PSPP




reply via email to

[Prev in Thread] Current Thread [Next in Thread]