JamesYang007 / FastAD

FastAD is a C++ implementation of automatic differentiation both forward and reverse mode.
MIT License
103 stars 3 forks source link

Remove CRTP and Replace with Concepts #13

Closed JamesYang007 closed 4 years ago

JamesYang007 commented 4 years ago

There are many uses of CRTP such as ADExpression that can be simplified and made more robust using self-implemented Concepts.

Types to consider:

There are meta-programming tools such as is_glue_eq, glue_size that should be changed/moved.

JamesYang007 commented 4 years ago

Actually, CRTP is probably the cleanest way to ensure interface.