← Back to home
Comparison · Analytics

lazyeval vs tidycmprsk

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

Shared themes:tidyverse

lazyeval vs tidycmprsk: at a glance

Featurelazyevaltidycmprsk
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesnon-standard-evaluation, r-c-api, dormancy-revival, tidyversecompeting-risks, survival-analysis, tidyverse, gtsummary
Last editorial update49m ago51m ago
WebsiteVisit →Visit →

What is lazyeval?

A package retired in 2017 just got rewritten against R's public C API.

lazyeval was the tidyverse's pre-rlang non-standard evaluation layer, formally set aside in 2017 when tidy evaluation replaced it. After eight and a half years without a release, 0.2.3 arrives as a compliance rewrite: the implementation now uses R's public C API, and the release note states it may differ from the historical one in subtle ways. Nothing about the package's role has changed.

Read the full lazyeval trajectory →

What is tidycmprsk?

Competing-risks modelling that now moves only when its neighbours do.

tidycmprsk wraps competing risks regression and cumulative incidence estimation in tidy-style output, so results slot into gtsummary tables and ggsurvfit plots. The last two releases are small: 1.1.2 sorts tidy.tidycuminc() output by stratum, 1.1.1 is an HTML5 documentation update for CRAN. The substantive work in the window is 1.1.0, which reorganised the gtsummary relationship.

Read the full tidycmprsk trajectory →

lazyeval vs tidycmprsk: editorial side-by-side

L
lazyeval
ANALYTICS
0.0

A package retired in 2017 just got rewritten against R's public C API.

◆ Current state

lazyeval was the tidyverse's pre-rlang non-standard evaluation layer, formally set aside in 2017 when tidy evaluation replaced it. After eight and a half years without a release, 0.2.3 arrives as a compliance rewrite: the implementation now uses R's public C API, and the release note states it may differ from the historical one in subtle ways. Nothing about the package's role has changed.

◆ Where it's heading

This is a dormancy revival driven entirely from outside, R core tightening what counts as the public C API forces packages using older internals to be rewritten or be archived. lazyeval is still a dependency deep in older package trees, so keeping it installable matters more than developing it. The caveat about subtle behavioural differences is the notable part: a package nobody is developing has changed behaviour in ways its release note declines to enumerate.

◆ Prediction

Expect no further development, only additional compliance releases if R core tightens the C API again.

T
tidycmprsk
ANALYTICS
0.0

Competing-risks modelling that now moves only when its neighbours do.

◆ Current state

tidycmprsk wraps competing risks regression and cumulative incidence estimation in tidy-style output, so results slot into gtsummary tables and ggsurvfit plots. The last two releases are small: 1.1.2 sorts tidy.tidycuminc() output by stratum, 1.1.1 is an HTML5 documentation update for CRAN. The substantive work in the window is 1.1.0, which reorganised the gtsummary relationship.

◆ Where it's heading

The package has spent its releases handing responsibilities to neighbouring packages rather than growing its own surface. Plotting was deprecated then made defunct in favour of ggsurvfit::ggcuminc(), and 1.1.0 moved the regression table methods so that gtsummary could drop tidycmprsk as a dependency. What remains is the estimation core plus the S3 methods that let other packages consume it, which is a deliberate narrowing.

◆ Prediction

Expect releases to continue tracking changes in gtsummary and the broader tidy survival stack rather than adding estimation features.

Alternatives to lazyeval and tidycmprsk

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 lazyeval or tidycmprsk.

See all lazyeval alternatives → · See all tidycmprsk alternatives →

Recent activity from lazyeval and tidycmprsk

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

  1. 4mo agotidycmprsktidycmprsk 1.1.2
  2. 4mo agolazyevalReimplemented against R's public C API after eight years dormant
  3. 9mo agotidycmprsktidycmprsk 1.1.1
  4. 1y agotidycmprsktidycmprsk 1.1.0
  5. 2y agotidycmprsktidycmprsk 1.0.0
  6. 3y agotidycmprsktidycmprsk 0.2.0
  7. 4y agotidycmprsktidycmprsk 0.1.2
  8. 8y agolazyevalDevelopment ends as the tidyverse moves to tidy evaluation
  9. 10y agolazyevalFormula-based lazy evaluation system introduced
  10. 11y agolazyevallazyeval 0.1.10
  11. 11y agolazyevallazyeval 0.1.9

Frequently asked questions

What is the difference between lazyeval and tidycmprsk?

Both compete on the same themes — tidyverse — within Analytics. lazyeval and tidycmprsk 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 lazyeval better than tidycmprsk?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. lazyeval and tidycmprsk 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 lazyeval?

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

What are the best alternatives to tidycmprsk?

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