diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2019-02-19 07:03:37 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2019-02-19 07:03:37 -0800 |
commit | 2e565908cf8dcc806c853d6765419546d48d1622 (patch) | |
tree | 3b5dd83fc3fe1e75b75f1787370077e6f1b415cb /struct.h | |
parent | fb4b9e9b632e88b1328a76c5636a338e73c9c746 (diff) | |
download | txr-2e565908cf8dcc806c853d6765419546d48d1622.tar.gz txr-2e565908cf8dcc806c853d6765419546d48d1622.tar.bz2 txr-2e565908cf8dcc806c853d6765419546d48d1622.zip |
struct: optimizations in new operator.
* share/txr/stdlib/struct.tl (new): Use struct-from-args and
struct-from-plist whenever possible; don't use make-struct
unless the syntax specifies both BOA and plist arguments.
Using struct-from-plist instead of make-struct means we can
now entirely avoid consing a list in compiled code.
Code like (new point x 0 y 0) now allocates nothing but the
struct.
Diffstat (limited to 'struct.h')
0 files changed, 0 insertions, 0 deletions