← Back to home
Comparison · Analytics

common vs lazyeval

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

common vs lazyeval: at a glance

Featurecommonlazyeval
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesr-utilities, base-r-extensions, infix-operators, data-frame-toolsnon-standard-evaluation, r-c-api, dormancy-revival, tidyverse
Last editorial update12m ago1h ago
WebsiteVisit →Visit →

What is common?

A base-R utility belt that grows one small function at a time, on no particular schedule

common collects small helpers that base R leaves out — data frame labelling and sorting, infix operators for pasting and equality, UTF-8 superscript and subscript lookups, file and directory search, attribute copying between data frames. It has no dependencies to speak of and deliberately removed the one it had. In practice it is the shared substrate for its author's wider package family, and its source.all() function is maintained specifically to cooperate with the logr logging package.

Read the full common trajectory →

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 →

common vs lazyeval: editorial side-by-side

C
common
ANALYTICS
0.0

A base-R utility belt that grows one small function at a time, on no particular schedule

◆ Current state

common collects small helpers that base R leaves out — data frame labelling and sorting, infix operators for pasting and equality, UTF-8 superscript and subscript lookups, file and directory search, attribute copying between data frames. It has no dependencies to speak of and deliberately removed the one it had. In practice it is the shared substrate for its author's wider package family, and its source.all() function is maintained specifically to cooperate with the logr logging package.

◆ Where it's heading

The pattern is accretion rather than direction: each release adds a couple of utilities and fixes whatever the last batch broke, with gaps of a year or more between them. Function additions cluster around whatever the author's other packages needed at the time — file search, attribute preservation, group-boundary detection, script sourcing. The 2025 release continues exactly this, extending the infix comparison operators from equality alone to the full set of relational tests.

◆ Prediction

Expect more of the same shape — a handful of small helpers whenever a sibling package needs them — with no sign in these entries of a broader API push.

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.

Alternatives to common and lazyeval

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

See all common alternatives → · See all lazyeval alternatives →

Recent activity from common and lazyeval

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

  1. 4mo agolazyevalReimplemented against R's public C API after eight years dormant
  2. 8mo agocommonFull set of relational infix operators added
  3. 2y agocommonsource.all() fixed to cooperate with logr
  4. 2y agocommonsource.all() added for sourcing a directory of scripts
  5. 2y agocommonchanged() fixed for single-value input
  6. 2y agocommonchanged() identifies grouping boundaries
  7. 3y agocommonthis.path() dependency removed
  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 common and lazyeval?

They serve adjacent needs but don't currently overlap on shipped themes. common and lazyeval 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 common better than lazyeval?

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

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

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.