homepage: https://github.com/daig/microgroove
changelog-type: ''
hash: 0d0f3ce69a6d1498b7cd28b1114a82802ab01c20900eec2d4c2e882885e2163e
test-bench-deps: {}
maintainer: dai@sodality.cc
synopsis: Array-backed extensible records
changelog: ''
basic-deps:
  base: ! '>=4.7 && <5'
  primitive: -any
  vector: -any
all-versions:
- '0.1.0.0'
author: Dai
latest: '0.1.0.0'
description-type: markdown
description: ! '# microgroove

  Microgroove supports type-safe positional heterogeneous records similar to [vinyl](https://hackage.haskell.org/package/vinyl-0.6.0/docs/Data-Vinyl-Core.html#t:Rec)
  and [SOP](https://hackage.haskell.org/package/generics-sop-0.3.1.0/docs/Generics-SOP.html#t:NP).

  Unlike these record types which are represented by linked lists, `microgroove`''s
  `Rec` type is backed by arrays, and so support constant-time indexing and mutable
  updates via the associated `MRec` type.


  Microgroove can be used for lightweight statically specified polymorphic records
  just like `vinyl`, but also dynamic record types that are only provided at run-time,
  such as receiving an arbitrary JSON protocol.


  # build

  The recommended way to build microgroove is via [stack](https://www.haskellstack.org)
  with `stack build`


  # contribute

  microgroove is an early alpha, so please submit any bugs or feature requests on
  the issue tracker

'
license-name: BSD3

Update from Hackage at 2017-09-16T14:35:39Z
Update from Hackage at 2017-09-16T14:35:39Z
