Commit Graph

95 Commits

Author SHA1 Message Date
Zach Laine
f394796c58 Fix Clang compilation error in self_evaluation.cpp. 2019-05-31 02:40:07 -05:00
Zach Laine
a892bf00cf Fix compilation error in self_evaluation.cpp. 2019-05-31 02:29:42 -05:00
Zach Laine
897b3561f2 Add a self-evaluating expression example. 2019-05-30 17:21:55 -05:00
Zach Laine
d109233074 Remove now-superfluous #include of Boost.Serialization header. 2018-10-19 21:54:14 -05:00
Zach Laine
923d61ae7a Remove previous hack of defining BOOST_NO_AUTO_PTR explicitly in source, and
instead make sure that the Travis build uses Boost 1.68; also upgraded
Google.Benchmark dependency to v1.2.0.
2018-10-18 19:57:38 -05:00
Zach Laine
8c7a551ef2 Define BOOST_NO_AUTO_PTR in the autodiff example to fix C++17 Clang builds. 2018-10-17 22:44:38 -05:00
Zach Laine
4fffac23c0 Doc updates based on offline post-list-review doc review by Brook Milligan. 2018-03-21 21:50:53 -05:00
Zach Laine
8b4e2cc5ea Doc copy editing. 2018-03-03 23:37:48 -06:00
Zach Laine
a5ce500ef6 Add BOOST_YAP_USER_CALL_OPERATOR_N.
Partially addresses #51.
2018-03-03 20:27:13 -06:00
Zach Laine
143beb91de Unify binary member and nonmember macros; add subscript operator member macro.
Fixes #22.
Fixes #68.
2018-03-03 18:06:34 -06:00
Zach Laine
4ce7fbafd8 BOOST_YAP_USER_UNARY_OPERATOR_MEMBER -> BOOST_YAP_USER_UNARY_OPERATOR
Partially implements #22.
2018-03-03 16:20:39 -06:00
Zach Laine
9c67b71648 Fix dangling reference errors by reinstating the use of as_expr() in recursive
transforms.
2018-03-02 23:32:19 -06:00
Zach Laine
311ce35ec9 Revert "Remove the now-redundant uses of as_expr()."
This reverts commit 260dc0e82d.
2018-03-02 23:11:44 -06:00
Zach Laine
64aeedbc76 Add run_examples make target that does just what you'd expect. 2018-02-27 17:29:34 -06:00
Louis Dionne
b2322fbca3 Fix typos 2018-02-26 22:41:16 -06:00
Zach Laine
661b09d09d BOOST_YAP_USER_FREE_BINARY_OPERATOR -> BOOST_YAP_USER_NONMEMBER_BINARY_OPERATOR;
add BOOST_YAP_USER_ASSIGN_OPERATOR_MEMBER to macros table in docs.
2018-02-25 22:44:19 -06:00
Zach Laine
74eab425e7 Substantially rewrite the description of transform() semantics.
Fixes #47.
Fixes #50.
2018-02-25 14:18:21 -06:00
Zach Laine
a562edb346 Flesh out commentary in let.cpp; add it to the docs as an example. 2018-02-24 23:58:41 -06:00
Zach Laine
d8b2181185 Copy editing. 2018-02-24 23:58:11 -06:00
Zach Laine
260dc0e82d Remove the now-redundant uses of as_expr(). 2018-02-23 21:50:06 -06:00
Zach Laine
bcbcd8fa26 Don't needlessly return the nth element of a vector as a copy in take_nth.
Fixes #39.
2018-02-23 21:50:06 -06:00
Zach Laine
746adaabfe Condition the 'let' example build on the availability of cosntexpr if. 2018-02-23 02:03:46 -06:00
Zach Laine
91e8c682b5 Remove customization point cruft from example/mixed.cpp. 2018-02-23 01:50:40 -06:00
Zach Laine
6bb94c1082 Remove redundant case from iota_terminal_transform. 2018-02-22 23:18:43 -06:00
Zach Laine
4b383f9343 Add example implementing a version of Boost.Phoenex's let() syntax. 2018-02-20 23:27:40 -06:00
Zach Laine
b80f06a4c6 Finish integrating the two new examples into the docs. 2018-02-18 15:53:12 -06:00
Zach Laine
25d4acf6d6 Add extensive comments to pipable_algorithms.cpp; use snippets from it in the
intro; add it as an example.
2018-02-18 13:33:53 -06:00
Zach Laine
98acc2b2e7 Add pipable_algorithms example. 2018-02-18 12:35:54 -06:00
Zach Laine
5d011d83a0 Tweak comment. 2018-02-16 23:45:15 -06:00
Zach Laine
22b8ab969f Make the calc3 get_arity transform a little nicer based on review feedback.
Fixes #43.
2018-02-16 23:23:48 -06:00
Zach Laine
07848d6236 Simplify the overload set used in the transformf in transform_terminals.
Fixes #38.
2018-02-16 23:07:38 -06:00
Zach Laine
123ea1df6a Fix malformed expr_kind::call overload in transform_terminals example. 2018-02-16 23:02:59 -06:00
Zach Laine
8712988c25 Add expr_tag template to handle expr_kind <-> tag mapping.
Fixes #49.
2018-02-16 22:34:09 -06:00
Zach Laine
d1834c6c01 Add references to specific examples alluded to in a general reference to "Examples". 2018-02-16 21:56:53 -06:00
Zach Laine
0f4e144edc Add terminal transform example; not working due to longstanding call_expr tag
transform matching bug.
2018-02-15 23:02:26 -06:00
Zach Laine
27380020d7 Revert "Transform terminals before they are unwrapped and given as arguments to"
This reverts commit 4e68505bab.

Fixes #40.
2018-02-15 21:24:20 -06:00
Zach Laine
8282c4b10e Add Boost license copyright headers to all C++ files.
Fixes #31.
2018-02-15 18:07:48 -06:00
Zach Laine
2adaeb8813 Remove customization point-based and their implicit tranformations,
evaluate_as(), and BOOST_YAP_CONVERSION_OPERATOR_TEMPLATE.

Fixes #29
Fixes #30
2018-02-14 20:32:00 -06:00
Zach Laine
b6d53d153d Changes based on Part 2 of Steven Watanabe's review. 2018-02-14 17:50:29 -06:00
Zach Laine
dee006df7d Update docs and some example code based on part 1 of Steven Watanabe's review. 2018-02-11 14:20:30 -06:00
Zach Laine
ed985c0b21 Doc update to make the sections on transform() clearer. 2018-02-02 22:45:01 -06:00
Zach Laine
d0ba21f938 Add missing Boost.Serialization include to autodeff.h. 2017-06-24 17:26:34 -05:00
Zach Laine
55e9f33892 Remove this_type parameter from all member function macros. 2017-05-09 11:14:55 -05:00
Zach Laine
62bfb3d0b8 Amplify Transforming Expressions section. Fixes #14. 2017-03-17 21:27:11 -05:00
Zach Laine
4e68505bab Transform terminals before they are unwrapped and given as arguments to
TagTransforms.
2017-03-12 14:59:35 -05:00
Zach Laine
3230cf2955 #include yap/algorithm instead of yap/expression in appropriate examples. 2016-12-21 20:11:37 -06:00
Louis Dionne
c23c06e509 [CMake] Pull the setting up of dependencies into its own file
Also, properly define link/header dependencies between targets.
2016-12-18 17:49:23 -06:00
Zach Laine
24a0ef69de Make examples C++14 friendly. 2016-12-17 23:17:04 -06:00
Zach Laine
858117ea71 Remove unnecessary genericity in autodiff example, and remove the
assert(false) in the negation transform (since the reason it was placed there
is fixed).
2016-12-17 19:27:49 -06:00
Zach Laine
056e886351 Slight modifications to autodiff example, including one that reveals a bug. 2016-12-17 13:09:55 -06:00