← Back to home
Comparison · Analytics

cheapr vs distributions3

A side-by-side editorial comparison of cheapr and distributions3 — release velocity, themes, recent moves, and the top alternatives to consider.

Shared themes:r-package

cheapr vs distributions3: at a glance

Featurecheaprdistributions3
SectorAnalyticsAnalytics
Velocity score0.02.5
Sparks · 30d00
Top themesperformance, parallelism, simd, c-apir-package, probability-distributions, statistical-modelling, maintainership
Last editorial update1h ago50m ago
WebsiteVisit →Visit →

What is cheapr?

cheapr turned multi-threaded, and its next stop is a C++20 public API.

cheapr supplies lower-overhead replacements for base R's data manipulation primitives — subsetting, recycling, concatenation, attribute handling, data frame construction. Through 2025 it grew function by function: sset_df/sset_row/sset_col, list_as_df, cheapr_c, counts, str_coalesce, df_modify. The 1.5.0 release in April 2026 changed the nature of the package, adding parallelised math functions, user-settable thread counts, multi-threaded vector initialisers, and a SIMD-parallelised if_else_, with threading on by default at two threads.

Read the full cheapr trajectory →

What is distributions3?

distributions3 changes hands to Achim Zeileis, and a moment calculation bug goes with it.

An R package giving probability distributions a consistent object interface — d/p/q/r functions, moments, and prodist() methods that extract a fitted distribution from a regression object. Releases are infrequent, roughly one a year, and the last one is largely administrative: Achim Zeileis takes over maintenance from Alex Hayes, with all URLs and documentation updated to match, alongside a fix to incorrect moment calculations reported by a user.

Read the full distributions3 trajectory →

cheapr vs distributions3: editorial side-by-side

C
cheapr
ANALYTICS
0.0

cheapr turned multi-threaded, and its next stop is a C++20 public API.

◆ Current state

cheapr supplies lower-overhead replacements for base R's data manipulation primitives — subsetting, recycling, concatenation, attribute handling, data frame construction. Through 2025 it grew function by function: sset_df/sset_row/sset_col, list_as_df, cheapr_c, counts, str_coalesce, df_modify. The 1.5.0 release in April 2026 changed the nature of the package, adding parallelised math functions, user-settable thread counts, multi-threaded vector initialisers, and a SIMD-parallelised if_else_, with threading on by default at two threads.

◆ Where it's heading

Two arcs run at once. The visible one is parallelism: what began as single-threaded C shortcuts is becoming a threaded compute layer, and the notes state the C/C++ API is mid-rewrite with a stable form promised at 2.0.0 behind a C++20 requirement. The quieter one is R C API compliance — 1.5.1 removed R_MissingArg, R_UnboundValue, Rf_findVar and Rf_findVarinFrame, the non-API entry points being closed off upstream. The 1.5.x patches since are narrow crash fixes, which reads as consolidation before the 2.0.0 break.

◆ Prediction

Expect 2.0.0 to land the stable C/C++ API behind a C++20 toolchain floor, with more of the existing function surface threaded in the interim. The package has announced both moves in its own release notes.

D2.5

distributions3 changes hands to Achim Zeileis, and a moment calculation bug goes with it.

◆ Current state

An R package giving probability distributions a consistent object interface — d/p/q/r functions, moments, and prodist() methods that extract a fitted distribution from a regression object. Releases are infrequent, roughly one a year, and the last one is largely administrative: Achim Zeileis takes over maintenance from Alex Hayes, with all URLs and documentation updated to match, alongside a fix to incorrect moment calculations reported by a user.

◆ Where it's heading

The package's growth has come in two modes. Early releases absorbed whole families of distributions from outside contributors — the extreme-value set, Erlang, later the Poisson binomial — while later ones tightened the interface itself with is_discrete() and is_continuous() generics and elementwise type-safety when applying a distribution vector to a numeric vector. The handover is the notable event in the current window: maintenance moves to the author of the surrounding statistical ecosystem this package already integrates with through prodist() and countreg, which suggests the interface work will continue over the distribution-collection work.

◆ Prediction

Expect closer alignment with Zeileis's own packages, with prodist() coverage widening to more model classes; the entries here do not indicate whether new distribution families remain on the agenda.

Alternatives to cheapr and distributions3

Other Analytics products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either cheapr or distributions3.

See all cheapr alternatives → · See all distributions3 alternatives →

Recent activity from cheapr and distributions3

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 24d agodistributions3Maintenance moves to Achim Zeileis; moment calculations corrected
  2. 1mo agocheaprrep_len_ crash on shrinking lengths fixed
  3. 4mo agocheaprNon-API R internals removed
  4. 4mo agocheaprParallelised math, thread control, and a C API rewrite
  5. 10mo agodistributions3ggplot2 compatibility for the plotting functions
  6. 1y agocheaprSubsetting speedups; sset_col negative-index crash fixed
  7. 1y agocheaprdf_modify added; attribute helpers renamed for intent
  8. 1y agocheaprcounts and str_coalesce added; reconstruct renamed to rebuild
  9. 1y agodistributions3Poisson binomial distribution, with a normal-approximation fallback
  10. 3y agodistributions3is_discrete and is_continuous generics, plus elementwise type-safety
  11. 4y agodistributions3Extreme-value family, Erlang, and a plotting generic

Frequently asked questions

What is the difference between cheapr and distributions3?

Both compete on the same themes — r-package — within Analytics. distributions3 is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is cheapr better than distributions3?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. distributions3 is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.

What are the best alternatives to cheapr?

Top cheapr alternatives in Analytics are ranked by recent ship velocity. Browse the "cheapr alternatives" section above for the current picks, or visit /alternatives/cheapr-r for the full list with editorial commentary on each.

What are the best alternatives to distributions3?

Top distributions3 alternatives in Analytics are ranked by recent ship velocity. Browse the "distributions3 alternatives" section above for the current picks, or visit /alternatives/distributions3-r for the full list with editorial commentary on each.