← Back to home
Comparison · Analytics

compositional.mle vs DHARMa

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

Shared themes:r-package

compositional.mle vs DHARMa: at a glance

Featurecompositional.mleDHARMa
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesmaximum-likelihood, optimization, functional-api, cranresidual-diagnostics, glmm, breaking-change, bayesian
Last editorial update39m ago46m ago
WebsiteVisit →Visit →

What is compositional.mle?

An MLE package rebuilt around composable solvers, then renamed to match.

compositional.mle performs numerical maximum likelihood estimation in R, with the optimisation strategy expressed as composed pieces rather than configured up front. It began in November 2025 as numerical.mle, a configuration-object package with fixed solvers. The v0.2.0 rewrite replaced that with solver factories sharing a uniform signature and operators for chaining and racing them, and renamed the package accordingly. The two most recent releases are CRAN submission work.

Read the full compositional.mle trajectory →

What is DHARMa?

DHARMa changed how GLMM residuals are simulated, so the same code now returns different numbers.

DHARMa generates scaled quantile residuals for fitted GLMMs and runs the dispersion, uniformity, and autocorrelation tests built on them. Version 0.5.0 changed the default simulation for hierarchical models from the model's own default, mostly unconditional, to conditional simulation, and states plainly that residuals will differ from those computed by older versions. The same release added brms to the supported model set and reworked how predictors are passed to plotting and testing functions.

Read the full DHARMa trajectory →

compositional.mle vs DHARMa: editorial side-by-side

C0.0

An MLE package rebuilt around composable solvers, then renamed to match.

◆ Current state

compositional.mle performs numerical maximum likelihood estimation in R, with the optimisation strategy expressed as composed pieces rather than configured up front. It began in November 2025 as numerical.mle, a configuration-object package with fixed solvers. The v0.2.0 rewrite replaced that with solver factories sharing a uniform signature and operators for chaining and racing them, and renamed the package accordingly. The two most recent releases are CRAN submission work.

◆ Where it's heading

The arc is a design idea overtaking an implementation: version 0.1.0 exposed configuration functions and named solvers, version 0.2.0 turned solvers into values that can be sequenced with %>>%, raced with %|%, restarted, or conditionally refined, and separated the statistical problem from the optimisation strategy. Since then all effort has gone into CRAN acceptance, dead code removal, policy compliance, validation fixes. That is a package that redesigned itself early and is now trying to get through the door.

◆ Prediction

With the composable API settled, the next work will most likely be additional solvers and transformers plugged into the existing operators rather than another redesign.

D
DHARMa
ANALYTICS
0.0

DHARMa changed how GLMM residuals are simulated, so the same code now returns different numbers.

◆ Current state

DHARMa generates scaled quantile residuals for fitted GLMMs and runs the dispersion, uniformity, and autocorrelation tests built on them. Version 0.5.0 changed the default simulation for hierarchical models from the model's own default, mostly unconditional, to conditional simulation, and states plainly that residuals will differ from those computed by older versions. The same release added brms to the supported model set and reworked how predictors are passed to plotting and testing functions.

◆ Where it's heading

The package has spent several releases widening which model backends it can diagnose, from glmmTMB through mgcv, phylolm and now brms, while methodological work has gone into handling correlated residuals via the rotation argument. Version 0.5.0 shifts from adding coverage to changing defaults for statistical power. The formula interface arriving across plotResiduals, testCategorical, testQuantiles and the autocorrelation tests suggests the API is being unified rather than extended function by function.

◆ Prediction

The next releases will likely broaden brms support past the simple-model restriction and continue converting remaining functions to the formula interface.

Alternatives to compositional.mle and DHARMa

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 compositional.mle or DHARMa.

See all compositional.mle alternatives → · See all DHARMa alternatives →

Recent activity from compositional.mle and DHARMa

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

  1. 2mo agoDHARMaConditional simulation becomes the GLMM default, changing residuals
  2. 6mo agocompositional.mleParallel racing fixed under the future package
  3. 6mo agocompositional.mleDead code removed and CRAN policy compliance work
  4. 8mo agocompositional.mleSolvers become composable values, and the package is renamed
  5. 8mo agocompositional.mleFirst release as numerical.mle, built on configuration objects
  6. 1y agoDHARMaDHARMa 0.4.7
  7. 3y agoDHARMaDHARMa 0.4.6
  8. 4y agoDHARMaDHARMa 0.4.5
  9. 4y agoDHARMaDHARMa 0.4.4
  10. 5y agoDHARMaDHARMa 0.4.3

Frequently asked questions

What is the difference between compositional.mle and DHARMa?

Both compete on the same themes — r-package — within Analytics. compositional.mle and DHARMa are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is compositional.mle better than DHARMa?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. compositional.mle and DHARMa are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.

What are the best alternatives to compositional.mle?

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

What are the best alternatives to DHARMa?

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