[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] branch wip-goops-refactor updated (c89d0c5 -> def60ff)
From: |
Andy Wingo |
Subject: |
[Guile-commits] branch wip-goops-refactor updated (c89d0c5 -> def60ff) |
Date: |
Thu, 22 Jan 2015 17:29:39 +0000 |
wingo pushed a change to branch wip-goops-refactor
in repository guile.
discards c89d0c5 Simplify GOOPS effective method cache format
discards 39f3232 Fast generic function dispatch without calling `compile'
at runtime
discards e4c7143 GOOPS cosmetics
discards d28917c Update (oop goops save) for <slot> objects
discards cc63cbf Fix foreign objects for removal of getters-n-setters
discards d3c5e9b Keywords have a tc7
discards d706407 Minor GOOPS cleanups
discards 9eac2c6 Optimize %initialize-object
discards c3cd6fc Inline internal slot accessors
discards 2941be2 Inline helpers into slot-ref, slot-set!, etc
discards cddf1d7 Add allocate-struct, struct-ref, struct-set! instructions
discards dea7001 Use a vtable bit to mark <slot> instances
discards cf6514f Introduce <slot> objects in GOOPS
discards 5596eb3 Beginnings of <slot> slot definition class
discards 04bd53b The GOOPS "unbound" value is a unique pair
discards 504ec71 GOOPS: Deprecate "using-class" procs like
slot-ref-using-class
discards 5945f3d change-object-class refactor
discards 8969ba9 slot-ref, slot-set! et al bypass "using-class" variants
discards 3ae92eb Manipulate GOOPS vtable flags from Scheme, for speed
discards 9ff09f6 GOOPS class slot indices defined as inline values
discards c108371 `match' refactor in goops.scm
discards feada76 Convert emit-linear-dispatch to use match
discards 422884b More GOOPS cleanups
discards d4299de when and unless for one-armed ifs in goops.scm
discards 017d7b1 More GOOPS comments
discards 342bf18 Commenting in goops.scm
discards a83dc3b Narrative reordering in goops.scm
discards 827490f scm_make cleanup
discards 52bafa4 Add compute-cpl tests
discards 8b455ab Scheme GOOPS cleanups
discards b9fdcd0 Fold (oop goops util) into (oop goops)
discards ed248f5 GOOPS utils module cleanups
discards 8cada71 append-map rather than mapappend
discards 9449489 GOOPS cleanup to use SRFI-1 better
discards b623b66 Cosmetic goops refactors.
discards 5c57cb3 Incorporate %inherit-magic! into %init-layout!
discards c89ac6c Remove special cases for <keyword>
discards 7506905 goops.c no longer knows about <class> slot allocation
discards e1c9341 Reimplement inherit-applicable! in Scheme
discards a1d2225 Reimplement %allocate-instance in Scheme
discards 6e07242 Re-use the vtable "size" field for GOOPS nfields
discards e045976 Move <class> initialization to Scheme
discards 951cce9 Deprecate scm_get_keyword
discards e202ad4 Rewrite %initialize-object in Scheme
discards fcb54f0 Minor goops.c tidying
discards 1dd2531 Remove scm_c_extend_primitive_generic
discards c0e0104 No more concept of "pure generics"
discards f86e587 Remove TEST_CHANGE_CLASS
discards 415be11 Remove pure-generic?
discards b683a75 Goops slot-unbound / slot-missing cleanups
discards d4414c8 Move slot-ref et al to Scheme
discards 01aa549 Port method and generic accessors to Scheme
discards b5b99c1 <class> accessors implemented in Scheme
discards bdc7918 goops: use computed class slot offsets; untabify and fix
whitepace
discards 9cb2da7 Statically compute offsets for slots of <class> in Scheme
discards 8c85e81 Refactor to <class> slot computation
discards f4464fe Remove GOOPS random state
discards 1700712 More goops.c cleanups, and fix a security issue
discards d7703e3 Remove unused union scm_t_debug_info
discards b96d55a More unused code removal in GOOPS
discards 224525f Remove private var_no_applicable_method capture
discards 9ee5838 Remove scm_assert_bound
discards 0a38a0e Remove scm_at_assert_bound_ref
discards 5945af6 Remove hashset slots from GOOPS classes
discards 8a1abbf Deprecate C exports of GOOPS classes.
discards 5abbe06 Generics with setters have
<applicable-struct-with-setter> layout
discards e571ccf Remove unused CPP defines naming <method> slots
discards fab2ed8 Remove unused `default-slot-definition-class' <class> slot
discards 383ee39 Remove useless scm_s_slot_set_x export
discards 674d9c5 Remove unreachable code in scm_setter
discards 958f08a Deprecate scm_no_applicable_method C export
discards 6a9f9b2 Remove unused scm_t_method and SCM_METHOD
discards 57457b9 Fold GOOPS compile and dispatch modules into main GOOPS
module
discards c3f1295 Further GOOPS simplifications
discards 5d190db Remove unused *goops-module* definition.
discards a01c15f define-generic, define-extended-generic are hygienic
syntax
discards 55ee6b2 `class' is a hygienic macro
discards 013bf27 Deprecate scm_basic_make_class
discards a983bb3 Move GOOPS boot to Scheme
discards 344418f Remove declarations without definitions
discards 6f0c79c Remove unused %fast-slot-ref / %fast-slot-set! from GOOPS
discards 934d169 Preparation for more GOOPS refactorings
discards c6fa70e %init-goops-builtins is an extension, not a global
discards e259d60 compute-cpl implementation only in Scheme
discards 1a1b40b More useless goops.c code removal
discards ca61987 Remove unused macros in goops.c
discards f3dac8a Rewrite %method-more-specific? to be in Scheme
discards eed8e3a Deprecate C interfaces scm_compute_applicable_methods,
scm_find_method
discards f04dd97 %compute-applicable-methods in Scheme
adds b1451ad docs: Fix documented return type of 'scm_c_export'.
adds 24d4f02 Merge commit 'b1451ad859183ae48c624d19ec144306bd2d3e3a'
adds 5af307d read: Accept "\(" in string literals.
adds 678995f Merge commit '5af307de43e4b65eec7f235b48a8908f2a00f134'
adds 27b3b5b Add allocate-struct, struct-ref, struct-set! instructions
adds e2fafeb Keywords have a tc7
adds 449be2a build: Adjust autogen.sh to 'libtoolize' name on Darwin.
adds 6b47249 Thank Per Bothner.
adds b9ace68 scm_boot_guile: Gracefully handle the case where argc ==
0.
adds 30c5982 i18n: Add HAVE_USELOCALE as a requirement for
USE_GNU_LOCALE_API.
adds a7bbba0 Use on-stack or GC-managed memory in 'search-path'.
adds d5dffec Merge commit 'a7bbba05838cabe2294f498e7008e1c51db6d664'
adds 9c5d6aa Reduce C heap allocations in 'search-path'.
adds fda17c2 Fix strerror error handling when given a non-integer
argument.
adds 03242f3 Avoid bash-specific '==' comparison operator in guile.m4.
adds 10679f4 Fix bytevector-copy when applied to SRFI-4 homogeneous
numeric vectors.
adds fdd319e Add SCM_VALIDATE_SIZE_COPY and SCM_NUM2SIZE.
adds 086bbcc Merge commit 'fdd319e9bd4121d844662d3d8ccc69b462b60840'
adds 81d2c84 Avoid signed overflow and use size_t in bytevectors.c.
adds a51111d Merge commit '81d2c84674f03f9028f26474ab19d3d3f353881a'
adds ae6f77d Fix bytevector-fill! to accept fill arguments greater
than 127.
adds 136c3a4 Recognize m68k, s390x, and sh4 as compilation targets
adds d1447c7 doc: Clarify behavior of 'select' in the presence of
signal interruptions.
adds cffa9bd Implement SRFI 28: Basic Format Strings.
adds 7e466e0 doc: Tell when 'GUILE_INSTALL_LOCALE' first appeared.
adds 8cf2a7b Update (system base lalr) from upstream.
adds a5b5cb4 Merge commit '8cf2a7ba7432d68b9a055d29f18117be70375af9'
adds 5fac1a7 Add the 'guild' and 'guile' variables to 'guile-2.0.pc'.
adds 12dfe65 Merge commit '5fac1a7ada362d78f13143acbc0ceca7f2f101de'
adds 680135b doc: Clarify the unit of the 'offset' argument of 'seek'.
adds 7c433cb build: Add missing substitutions for 'guile-2.0.pc'.
adds 7c6ce75 Merge commit '7c433cbbce83bc9f2f9967afba00bbb68e312657'
adds 47ca15c build: Better handle substitutions in 'guile-2.0.pc' & co.
adds 1fc3fc1 Merge commit '47ca15c7dffd14a82e75c1a0aeeaf2e77f3fa5b4'
adds 5d971db Improve deprecation message of 'scm_add_to_port_table'.
adds 2f5c5d0 Merge commit '5d971db802eaa8038db17e1aa5b4c69452739744'
adds cdcba5b statprof: 'statprof' and 'with-statprof' return the
code's return values.
adds 6f248df Merge commit 'cdcba5b2f6270de808e51b3b933374170611b91d'
adds 37b1453 Avoid converting the 'mode' argument of 'open-file'.
adds baa74d3 Merge commit '37b1453032488de582175270d1b3a1653ea81457'
adds 5943a62 Optimize 'write' for strings.
adds 1cd7791 Merge commit '5943a62042432b86d757200ef595d7aebb5c9bac'
adds 894d0b8 Deprecate 'scm_string_hash'.
adds baf9010 Merge commit '894d0b894daae001495c748b3352cd79918d3789'
adds 87a8b56 Add 'string-hash' benchmarks.
adds 01a301d Optimize 'string-hash'.
adds e19235e Merge commit '01a301d1b606b84d986b735049e7155d2f4cd6aa'
adds e1d29ee Improve output of command-line errors.
adds ed72201 Fix buffer overrun with unbuffered custom binary input
ports.
adds 0a5b437 Merge commit 'ed72201a795ac1c8d6c0288b6bb710f2bd0ebd9c'
adds 5b76323 Fix #:init-value on class-allocated slots
adds 4247d8e Merge commit '5b7632331e7551ac202bbaba37c572b96a791c6e'
new de43d84 %compute-applicable-methods in Scheme
new b5bfbac Deprecate C interfaces scm_compute_applicable_methods,
scm_find_method
new d5671db Rewrite %method-more-specific? to be in Scheme
new 6b948b5 Remove unused macros in goops.c
new e3c28dc More useless goops.c code removal
new 2b1bde5 compute-cpl implementation only in Scheme
new 7f1b114 %init-goops-builtins is an extension, not a global
new 8701c2c Preparation for more GOOPS refactorings
new e2c5daa Remove unused %fast-slot-ref / %fast-slot-set! from GOOPS
new 6d54bca Remove declarations without definitions
new 29178cd Move GOOPS boot to Scheme
new 2fad8e5 Deprecate scm_basic_make_class
new 13c8d3a `class' is a hygienic macro
new 2db0483 define-generic, define-extended-generic are hygienic
syntax
new 34498f6 Remove unused *goops-module* definition.
new 44ea69f Fold GOOPS compile and dispatch modules into main GOOPS
module
new 159356c Remove unused scm_t_method and SCM_METHOD
new b75e36d Deprecate scm_no_applicable_method C export
new b053e38 Remove unreachable code in scm_setter
new e3b12bc Remove useless scm_s_slot_set_x export
new b55d967 Remove unused `default-slot-definition-class' <class> slot
new 4aece18 Remove unused CPP defines naming <method> slots
new 4f4a462 Generics with setters have
<applicable-struct-with-setter> layout
new a259a49 Deprecate C exports of GOOPS classes.
new 85b4f42 Remove hashset slots from GOOPS classes
new fc29bdb Remove scm_at_assert_bound_ref
new 19e5dc0 Remove scm_assert_bound
new f87b720 Remove private var_no_applicable_method capture
new 946a51b More unused code removal in GOOPS
new a4c7248 Remove unused union scm_t_debug_info
new cce4ac5 More goops.c cleanups, and fix a security issue
new e0ed728 Remove GOOPS random state
new 5186fbe Refactor to <class> slot computation
new 14c8e8e Statically compute offsets for slots of <class> in Scheme
new 8ed7c52 goops: use computed class slot offsets; untabify and fix
whitepace
new 3bb2f08 <class> accessors implemented in Scheme
new 19ce699 Port method and generic accessors to Scheme
new 74a86d8 Move slot-ref et al to Scheme
new 632151e Goops slot-unbound / slot-missing cleanups
new 77d9339 Remove pure-generic?
new 3e220ae Remove TEST_CHANGE_CLASS
new 7754cd4 No more concept of "pure generics"
new d0e2bf8 Remove scm_c_extend_primitive_generic
new d6b6f85 Minor goops.c tidying
new c266d2c Rewrite %initialize-object in Scheme
new 4b8262b Deprecate scm_get_keyword
new fef7e00 Move <class> initialization to Scheme
new 9911b16 Re-use the vtable "size" field for GOOPS nfields
new 2a4cce1 Reimplement %allocate-instance in Scheme
new 26962b0 Reimplement inherit-applicable! in Scheme
new 3e7fb22 goops.c no longer knows about <class> slot allocation
new 1edeaf4 Remove special cases for <keyword>
new 8225240 Incorporate %inherit-magic! into %init-layout!
new 1d3b598 Cosmetic goops refactors.
new 4510298 GOOPS cleanup to use SRFI-1 better
new 5a0501d append-map rather than mapappend
new 7849fb2 GOOPS utils module cleanups
new 71c47f8 Fold (oop goops util) into (oop goops)
new b092bb3 Scheme GOOPS cleanups
new 3a680ff Add compute-cpl tests
new 3cff1e2 scm_make cleanup
new afcb5bc Narrative reordering in goops.scm
new 2c6e5a9 Commenting in goops.scm
new bea5f88 More GOOPS comments
new bc652d3 when and unless for one-armed ifs in goops.scm
new a65ec94 More GOOPS cleanups
new 4c1b045 Convert emit-linear-dispatch to use match
new 42f6eaf `match' refactor in goops.scm
new 8d763ad GOOPS class slot indices defined as inline values
new 08c14fc Manipulate GOOPS vtable flags from Scheme, for speed
new 319c1bf slot-ref, slot-set! et al bypass "using-class" variants
new c9823c1 change-object-class refactor
new 60130a9 GOOPS: Deprecate "using-class" procs like
slot-ref-using-class
new a6e1f54 The GOOPS "unbound" value is a unique pair
new a68d880 Beginnings of <slot> slot definition class
new 9512e67 Introduce <slot> objects in GOOPS
new 7c36227 Use a vtable bit to mark <slot> instances
new f07cb7d Inline helpers into slot-ref, slot-set!, etc
new dd189c5 Inline internal slot accessors
new 2be5486 Optimize %initialize-object
new b70282d Minor GOOPS cleanups
new 870b9e6 Fix foreign objects for removal of getters-n-setters
new ec07829 Update (oop goops save) for <slot> objects
new e30dbbf GOOPS cosmetics
new a9276b6 Fast generic function dispatch without calling `compile'
at runtime
new ee6af1e Simplify GOOPS effective method cache format
new def60ff tmp
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (c89d0c5)
\
N -- N -- N refs/heads/wip-goops-refactor (def60ff)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omits" are not gone; other references still
refer to them. Any revisions marked "discards" are gone forever.
The 87 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.
Summary of changes:
THANKS | 4 +
autogen.sh | 10 ++-
benchmark-suite/Makefile.am | 1 +
benchmark-suite/benchmarks/{write.bm => hash.bm} | 49 ++++++-----
configure.ac | 10 +--
doc/ref/api-data.texi | 8 ++-
doc/ref/api-io.texi | 10 ++-
doc/ref/api-modules.texi | 2 +-
doc/ref/guile-invoke.texi | 6 +-
doc/ref/libguile-parallel.texi | 19 ++++-
doc/ref/posix.texi | 6 +-
doc/ref/srfi-modules.texi | 37 ++++++++
doc/ref/statprof.texi | 7 +-
libguile/bytevectors.c | 84 ++++++++++---------
libguile/deprecated.c | 7 +--
libguile/deprecated.h | 4 -
libguile/error.c | 9 ++-
libguile/filesys.c | 9 ++-
libguile/fports.c | 11 ++-
libguile/goops.c | 4 +-
libguile/hash.c | 10 +--
libguile/hash.h | 4 +-
libguile/i18n.c | 2 +-
libguile/init.c | 8 +-
libguile/load.c | 57 ++++++-------
libguile/print.c | 76 +++++++++++------
libguile/r6rs-ports.c | 17 ++--
libguile/read.c | 7 +-
libguile/validate.h | 7 ++
meta/Makefile.am | 86 +++++++++++++++----
meta/guile-2.2.pc.in | 7 ++
meta/guile.m4 | 2 +-
module/Makefile.am | 1 +
module/ice-9/command-line.scm | 12 ++-
module/oop/goops.scm | 42 ++++++----
module/srfi/{srfi-8.scm => srfi-28.scm} | 23 +++--
module/statprof.scm | 20 +++--
module/system/base/lalr.upstream.scm | 99 +++++++++++++---------
module/system/base/target.scm | 7 +-
test-suite/tests/bytevectors.test | 30 ++++++-
test-suite/tests/goops.test | 37 ++++++++
test-suite/tests/ports.test | 16 ++++-
test-suite/tests/r6rs-ports.test | 34 +++++++-
test-suite/tests/reader.test | 9 ++-
test-suite/tests/statprof.test | 13 +++
45 files changed, 626 insertions(+), 297 deletions(-)
copy benchmark-suite/benchmarks/{write.bm => hash.bm} (51%)
copy module/srfi/{srfi-8.scm => srfi-28.scm} (64%)
- [Guile-commits] branch wip-goops-refactor updated (c89d0c5 -> def60ff),
Andy Wingo <=
- [Guile-commits] 01/87: %compute-applicable-methods in Scheme, Andy Wingo, 2015/01/22
- [Guile-commits] 05/87: More useless goops.c code removal, Andy Wingo, 2015/01/22
- [Guile-commits] 07/87: %init-goops-builtins is an extension, not a global, Andy Wingo, 2015/01/22
- [Guile-commits] 03/87: Rewrite %method-more-specific? to be in Scheme, Andy Wingo, 2015/01/22
- [Guile-commits] 10/87: Remove declarations without definitions, Andy Wingo, 2015/01/22
- [Guile-commits] 08/87: Preparation for more GOOPS refactorings, Andy Wingo, 2015/01/22
- [Guile-commits] 09/87: Remove unused %fast-slot-ref / %fast-slot-set! from GOOPS, Andy Wingo, 2015/01/22
- [Guile-commits] 02/87: Deprecate C interfaces scm_compute_applicable_methods, scm_find_method, Andy Wingo, 2015/01/22
- [Guile-commits] 12/87: Deprecate scm_basic_make_class, Andy Wingo, 2015/01/22
- [Guile-commits] 04/87: Remove unused macros in goops.c, Andy Wingo, 2015/01/22