diff --git a/README.md b/README.md index b97781d..ea194c1 100644 --- a/README.md +++ b/README.md @@ -25,3 +25,5 @@ Hopefully this shows promise. It is an evolution of the concept first prototyped Note that Pocomath allows one implementation to depend just on a specific signature of another function, for efficiency's sake (if for example 'bar(Matrix)' knows it will only call 'foo(Matrix)', it avoids another type-dispatch). That capability is used in sqrt, for example. Pocomath also lazily reloads operations that depend on the config when that changes, and if an operation has a signature mentioning an undefined type, that signature is ignored until the type is installed, at which point the function lazily redefines itself to use the additional signature. + +Pocomath now also allows template operations and template types, also built on top of typed-function (but candidates for integration therein). This is used to make many operations more specific, implement a type-homogeneous Tuple type, and make Complex numbers be type-homogeneous (which it seems like it always should be). One of the cutest consequences of this approach is that with careful definitions of the `Complex` templates, one gets a working quaternion data type absolutely for free as `Complex>` (and integral quaternions as `Complex>`, etc.) \ No newline at end of file