Skip to content

Latest commit

 

History

History
38 lines (29 loc) · 2.09 KB

README.md

File metadata and controls

38 lines (29 loc) · 2.09 KB

ValueShapes.jl

Documentation for stable version Documentation for development version License Build Status Codecov

Documentation

ValueShapes provides Julia types to describe the shape of values, like scalars, arrays and structures.

Shapes provide a generic way to construct uninitialized values (e.g. multidimensional arrays) without using templates.

Shapes also act as a bridge between structured and flat data representations: Mathematical and statistical algorithms (e.g. optimizers, fitters, solvers, etc.) often represent variables/parameters as flat vectors of nameless real values. But user code will usually be more concise and readable if variables/parameters can have names (e.g. via NamedTuples) and non-scalar shapes. ValueShapes provides a duality of view between the two different data representations.

See the documentation for details:

ValueShapes is designed to compose well with ElasticArrays, ArraysOfArrays and TypedTables (and similar table packages). ValueShapes package has some overlap in functionality with TransformVariables, but provides a duality of view instead of transformations (and therefore uses data views instead of data copies, where possible).