rollupTree
The recursive-computation engine under massProps grows the accessors its consumer needed
A side-by-side editorial comparison of qol and tabular — release velocity, themes, recent moves, and the top alternatives to consider.
A SAS-to-R comfort layer that has quietly grown into its own dialect.
qol is a one-maintainer R package aimed at analysts moving from SAS: SAS-shaped verbs (compute., if./else_if., retain_value, do_if blocks), format-driven tabulation through any_table()/summarise_plus(), and styled Excel output as the default destination. Releases land roughly monthly and each one is large. The recent line has shifted from adding verbs to letting conditions be written as parsed character strings, which is the closest the package gets to reproducing SAS syntax inside R.
tabular went from clinical tables to complete TFL output in under two months.
tabular renders pre-summarised clinical tables, figures and listings to RTF, LaTeX, HTML, PDF, DOCX, Markdown and now Typst from one immutable verb pipeline, with no external SAS or Java runtime. It arrived in June 2026 as a CRAN submission candidate, added figure() a month later to cover the F in TFL, and has spent the 0.3.x line on speed, font resolution and toolchain diagnostics.
qol is a one-maintainer R package aimed at analysts moving from SAS: SAS-shaped verbs (compute., if./else_if., retain_value, do_if blocks), format-driven tabulation through any_table()/summarise_plus(), and styled Excel output as the default destination. Releases land roughly monthly and each one is large. The recent line has shifted from adding verbs to letting conditions be written as parsed character strings, which is the closest the package gets to reproducing SAS syntax inside R.
Three threads are visible across these releases. Syntax fidelity is the newest: ifelse_multi() introduced character-string conditions with SAS-style writing, and if./else_if. immediately picked the style up. Tabulation flexibility is the constant — any_table() gains per-variable statistic selection, nested variable combinations in brackets, vector order_by, compute support. The third is ecosystem plumbing the maintainer builds when a gap appears: file I/O in 1.3.0, a console message system, global style options, macro variables, and in 1.3.2 a code_statistics() script scanner. Renames to dodge data.table and dplyr masking recur often enough to be a pattern.
The maintainer flagged the new percentile behaviour as a first iteration that only works with few grouping variables, so a performance pass on it is the clearest outstanding item. Beyond that the character-condition syntax has reached three functions in two releases and looks likely to spread to the remaining filter-bearing verbs.
tabular renders pre-summarised clinical tables, figures and listings to RTF, LaTeX, HTML, PDF, DOCX, Markdown and now Typst from one immutable verb pipeline, with no external SAS or Java runtime. It arrived in June 2026 as a CRAN submission candidate, added figure() a month later to cover the F in TFL, and has spent the 0.3.x line on speed, font resolution and toolchain diagnostics.
The work is converging on backend parity — one spec should render the same wherever you emit it. Recent notes are almost entirely gap-closing between targets: bold column headers and page-width correction on LaTeX, cell margins on DOCX, group-separator blank rows re-expressed as discardable space so a page never ends on a stray gap, whitespace collapsing honoured on Typst. Diagnostics are keeping pace, with check_latex() probing through kpsewhich and check_typst() auditing the compiler and font chain.
With both toolchain checkers in place, the friction that remains is environmental rather than featural, and the notes point to further parity and packaging fixes rather than another backend. Whether Typst becomes the default PDF path instead of LaTeX is not something these notes settle.
Other Infra & APIs 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 qol or tabular.
The recursive-computation engine under massProps grows the accessors its consumer needed
A mass-properties rollup spends a year on documentation and follows its sibling's API
Six months of releases and not one of them touched the scoring models
A cognitive-science sampling package ships once, then goes quiet for eighteen months
A Bayesian volatility sampler in its maintenance decade, paying for its own speed
A black-box interpreter reaches CRAN, then learns multi-class and survival responses
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
Both compete on the same themes — r-packages — within Infra & APIs. tabular 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.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. tabular 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 Infra & APIs products to evaluate alongside.
Top qol alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "qol alternatives" section above for the current picks, or visit /alternatives/qol for the full list with editorial commentary on each.
Top tabular alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "tabular alternatives" section above for the current picks, or visit /alternatives/tabular for the full list with editorial commentary on each.