TGViewer
C++ - Reddit C++ - Reddit @r_cpp · 227 subscribers
Post #24023 22
Release of Sparrow 1.2: C++20 library for the Apache Arrow Columnar Format

🚀 [**Try it online !**](https://man-group.github.io/sparrow/jupyterlite/lab/index.html) 🚀 (yes, C++ library in your browser)

[Sparrow](https://github.com/man-group/sparrow) is a **modern C++20 library** designed to simplify the integration of the [Apache Arrow columnar format](https://arrow.apache.org/docs/format/Intro.html) into C++ applications.

While Arrow-cpp aims at providing a full-featured framework for writing dataframes, Sparrow has a more focused scope, concentrating on the reading and writing of the Arrow data specification.

It is the result of a collaboration between [**Man Group**](https://www.man.com/), [**Bloomberg**](https://www.bloomberg.com/company/values/tech-at-bloomberg/), and [**QuantStack**](https://quantstack.net/), ensuring robust support and continuous development.

# Why Sparrow?

Apache Arrow is the de facto standard for in-memory columnar data, but its reference C++ implementation ([Arrow-cpp](https://arrow.apache.org/docs/cpp/index.html)) can be overly complex for projects that only require basic read/write functionality. [Sparrow](https://github.com/man-group/sparrow) **fills this gap** by offering:

* **Lightweight and Modern**: Designed for efficiency and ease of use, leveraging **C++20 features** like iterators, ranges, and concepts.
* **Idiomatic APIs**: Provides array structures with APIs similar to **std::vector**, making it intuitive for C++ developers.
* **Convenient Conversions**: Seamless conversion between Sparrow’s C++ structures and Arrow’s C interface.
* **Zero-Copy Efficiency**: Ensures minimal overhead when working with Arrow data.

# 100% Arrow Compatibility

[Sparrow](https://github.com/man-group/sparrow) passes all **Apache Arrow Archery integration tests**, ensuring full compatibility with the Arrow ecosystem.

# Easy Installation

Available on:

* [Conda Forge](https://anaconda.org/conda-forge/sparrow): `conda install -c conda-forge sparrow`
* [vcpkg](https://vcpkg.io/en/package/arcticdb-sparrow): `vcpkg install arcticdb-sparrow`
* [Conan](https://conan.io/center/recipes/sparrow): `conan install sparrow`

# Test in Your Browser !

[Try Sparrow](https://man-group.github.io/sparrow/jupyterlite/lab/index.html) **without installation** thanks to [JupyterLite](https://github.com/jupyterlite) and [xeus-cpp](https://github.com/compiler-research/xeus-cpp).

https://redd.it/1o2usbg
@r_cpp
man-group.github.io JupyterLite WASM powered Jupyter running in the browser.
More from @r_cpp
  1. Oct 14, 2026I tested whether a coding agent would use C++23 ranges without being told Blog post: https…
  2. Oct 14, 2026C++ futures part 1: The mental model https://devblogs.microsoft.com/oldnewthing/20261012-0…
  3. Oct 14, 2026C++ futures part 2: The mental model for std::promise, std::packaged_task https://devblogs…
  4. Oct 12, 2026[Release] slick-logger v2.2.0 — Lock-free asynchronous C++20 logging with multi-process sh…
  5. Oct 12, 2026Cheap alternative to reboot parameters (nohz, rcu, isolcpus) for stable benchmarks When no…
  6. Oct 12, 2026This C++ drama is crazy - Adobe votes no https://www.youtube.com/watch?v=DEqx_NMMH9Q https…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →