0.31.0: emmy.js support, TeX improvements
-
#139:
-
Fixes matrix and simplification-related test failures introduced in the last couple of PRs.
-
Removes the custom
->Quaternionconstructor inemmy.quaternion; this was causing build warnings incljs. Any place you might have used->Quaternion, please useemmy.quaternion/make. -
Backs off the various protocol extensions in
emmy.collectionfromIPersistentMapandIPersistentSetto the concrete types shipped with Clojure. This prevents these implementations from attaching, on the JVM side, to newdefrecordinstances or other types that extend those protocols. -
Fixes a documentation error with
emmy.generic/atan.
-
-
#135:
-
Adds some hidden features for use by
emmy.jsto support use of Emmy from JavaScript. These features are not used by default, but are meant to be opted-in by JS libraries that need them. -
The function object now uses the field
f-nameinstead ofnameto hold the name of the function. The name property of Function objects in JS is readonly, so we need a different property that we can modify in order to create a JS object which is both an Emmy and an ES6 function. -
Adds the function
make-es6-callableto promote an IFn object to a native JS function by birthing a new function object which delegates to the original object's apply method, and copying over the rest of the object's identity. -
Adds the function
make-es6-indexableto promote an Emmy Structure to something that behaves more like an ES6 array. -
Structure objects are declared
es6-iterableusing a standard CLJS feature. -
Using
with-metaon a function creates a new object which is not a native JS function, though still invokable in Clojure. This is a steep price to pay for the privilege of adding metadata to a function, so for function objects we allow metadata to be directly applied.The IMeta interface can be used to retrieve this property-based metadata, but IWithMeta cannot be used to attach it (this interface guarantees the production of a new object). See
emmy.function/with-meta.
-
-
#134:
-
Adds
->TeXhandlers formatrix-by-rowsandcolumn-matrix. -
matrices now freeze into
(matrix-by-rows [...] [...])instead of(matrix-by-rows (up ...) (up ...)). -
functions in
emmy.numerical.odenow set:compile?totrueby default. -
Fixes some
TeXtypos in a few of the literate notebooks.
-
-
#131 fixes accidental simplification of keywords to
nil.