Mir Algorithm [1, 2]
=============

Dlang core library for math, finance and a home for Dlang multidimensional array package - ndslice.

New features:
- most of routines in mir.ndslice.topology (e.g. map, zip, stride) accept common arrays
 - `Series` got the same formating as builtin associative arrays
 - `Series` got ~ overloaded operator for set union.
- mir.series: `unionSeries` was added (for N=2 optimised using `troykaSeries`) - mir.series: `troykaGalop` and `troykaSeries` were added. They are awesome too iterate over set union when both side set differences and/or set intersection should be handled seprately [6, 7]
 - ... and a lot of others I forgot since v0.8.0 announce

Few bugs was fixed.

And a small tip about syntax sugar [3]:

/+dub.sdl:
dependency "mir-algorithm" version="~>1.1.3"
+/

import mir.ndslice;
void main()
{
    auto v = [1.0, 2];
    auto w = [1.0, 2];

     // `map` knows about `zip`
    auto lazySum1 = zip(v, w).map!((a, b) => a + b);

    //  it is elementwise sum too.
    auto lazySum2 = v.sliced + w.sliced;

    assert(lazySum1 == lazySum2);
}

Major part of this work has been sponsored by Symmetry Investments [4] and Kaleidic Associates [5].

Acknowledgements:
  Sebastian Wilzbach,
  Nathan Sashihara,
  John Hall,
  Shigeki Karita.

[1] https://github.com/libmir/mir-algorithm
[2] http://docs.algorithm.dlang.io/latest/index.html
[3] https://run.dlang.io/gist/e45d9892299131cee9c90541bbc00183
[4] http://symmetryinvestments.com
[5] https://github.com/kaleidicassociates
[6] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaGalop [7] http://docs.algorithm.dlang.io/latest/mir_series.html#.troykaSeries

Best Regards,
Ilya Yaroshenko

Reply via email to