Skip to content

Latest commit

 

History

History
95 lines (82 loc) · 2.09 KB

TODO.md

File metadata and controls

95 lines (82 loc) · 2.09 KB

TODO

General

  1. Method to throw all methods into the global namespace; compute.mean() --> mean(). How to prevent methods from getting clobbered?
  2. Should methods explicitly handle cases where the input array is empty? e.g., mean([]) === null or NaN, rather than returning 0, an initialized value.
    • How else to distinguish between a mean of 0 and having provided an empty array?
    • Could also throw, but this may be a bit harsh. Type checking and throwing, okay, but throwing due to an empty array may be too disruptive.
    • see nanmin and nanmax
    • see prod!!! --> returns null
  3. performance optimization
    • linspace/logspace/datespace/zip/
      • use push for arrays longer than fast element limit
      • see incrspace/incrdatespace
  4. in all module examples, reuse compute modules (e.g., for computing sum, mean, etc) --> dev dependencies
  5. timeseries date utilities
  6. csv utilities
  7. json utilities
  8. tsv utilities
  9. other data formats (?)
  10. .jscs.json
    • include jscs makefile target
    • use jsdoc plugin
  11. reorganize stats modules
    • descriptive
    • nan
    • incremental
    • weighted
    • moving
    • multivariate
  12. pretty exponential
  13. does Product belong in stats? dido for sum?
    • possibly move to arithmetic

Fluent

  1. implement then method, which takes a callback to which data is returned
  2. how to handle asynchronous computation? Currently, assume all synchronous tasks. If computations are outsourced to other languages, bindings, etc, which are asynchronous, how do we handle that? --> compute.async().roundn().mean()...

Accessors

Modules requiring accessor fcns...

  1. abs
  2. sqrt
  3. erf
  4. erfc
  5. erfinv
  6. erfcinv
  7. multiply
  8. roundn
  9. diff
  10. eq
  11. neq
  12. isnumeric
  13. isnan
  14. isfinite
  15. isinteger
  16. isinf
  17. deg2rad
  18. rad2deg
  19. l1norm
  20. linfnorm
  21. cross
  22. ...all stats modules