ir
Dr Tom Palmer
Personal academic website for Tom Palmer
Creating self-contained R scripts for rendering Quarto documents using the knitr engine – courtesy of the new R package managers ir and uvr | Dr Tom Palmer
How to create a self-contained (and optionally executable) R script, which declares the R package dependencies for rendering Quarto documents using the knitr engine. This allows non-technical users to render Quarto documents using the knitr engine without having to install the R packages themselves.
Tricky Parts of Async Mirai Magic
Parallelize Common Functions via One Magic Function
The futurize() function turns sequential map-reduce functions such as base::lapply(), purrr::map(), foreach::foreach() %do% { ... } into concurrent alternatives, providing you with a simple, straightforward path to scalable parallel computing via the future ecosystem . By combining this transpiler function with Rs native pipe operator, you have a convenient way for speeding up iterative computations with minimal refactoring, e.g. lapply(xs, fcn) | futurize(), purrr::map(xs, fcn) | futurize(), and foreach::foreach(x = xs) %do% { fcn(x) } | futurize(). Other map-reduce packages that can be "futurized" are BiocParallel, plyr, crossmap, pbapply packages. There is also support for a growing set of domain-specific packages on CRAN (e.g. boot, caret, DiceKriging, ez, fgsea, fwb, gamlss, glmmTMB, glmnet, kernelshap, lme4, metafor, mgcv, modelsummary, parameters, partykit, pls, pvclust, riskRegression, rugarch, sandwich, seriation, shapr, Sim.DiffProc, SimDesign, stars, strucchange, SuperLearner, tm, TSP, and vegan) and on Bioconductor (e.g. DESeq2, GenomicAlignments, GSVA, Rsamtools, scater, scuttle, SingleCellExperiment, and sva').
useR! 2026: Futurize - Tearing Down Parallelization Barriers in R with Transpilers
Below are the slides for my Futurize - Tearing Down Parallelization Barriers in R with Transpilers talk that I presented at the useR! 2026 conference in Warzaw, Poland.
Title: Futurize - Tearing Down Parallelization Barriers in R with Transpilers
Speaker: Henrik Bengtsson
Slides: HTML (16 slides; 18 minutes)
Video: To appear
The new futurize package makes it easier than ever before to parallelize existing map-reduce calls - just pipe the call to futurize() and you’re done!
An rlang-ish equivalent to stopifnot() · Issue #1111 · r-lib/rlang
Summarizing a slack conversation with @lionel- I'd be interested in an rlang substitute for stopifnot(). Recently, I've switched all conditions in reprex to rlang. Well, except for places where I h...
Suggestion: `cli_abort_if_not()` · Issue #672 · r-lib/cli
If I'm using cli in a package, often I avoid stopifnot() because the unformatted error messages feel jarring compared with those produced by cli_abort() and friends. I'm guessing cli has no stopifn...
r-best-practice/cheatsheet.pdf at main · wurli/r-best-practice
A cheatsheet for basic best practice in R programming - wurli/r-best-practice
Jacob Scott
Personal blog
giscoR/R/utils.R at main · rOpenGov/giscoR
Download and import geographical data from Eurostat GISCO into R. - rOpenGov/giscoR
RcppParallel
AgriFusionR/ARCHITECTURE.md at main · mqfarooqi1/AgriFusionR
Contribute to mqfarooqi1/AgriFusionR development by creating an account on GitHub.
Interactive calendars and date pickers for R and Shiny
An htmlwidget wrapping Vanilla Calendar Pro, with date, month, year and time selection, a popup date picker, theming, and in-place updates from the Shiny server.
1 Deconstructing agents – Trusted Mini-Agents
A guide to engineering AI errors out of agentic workflows. Includes human-in-the-loop guardrails and agentic workflows in R and Shiny.
Trusted Mini-Agents
Lua Filters for Quarto's HTML Output
Don't be a meat proxy
blockr
A visual, no-code framework for R
Undo for Shiny, and the three problems that make it interesting – Tanmay Chanda
Shiny has no undo. Adding it means solving three problems: restoring a widget you have never heard of, stopping the echo loop, and a bug that only R’s lazy evaluation could produce.
Unit Testing http client in Go
In this post, I’ll show two approaches to write unit tests when making external HTTP calls without using any mocking library. Suppose we have the following contrived API struct to call external services. We’ll write unit tests for the DoStuff() method that calls some API, handles any errors and probably do some complex logic with response. We just need to test our error handling and business logic part without making any actual API calls.
Testing Golang with httptest Best Practices | Speedscale
_Go_, often referred to as _Golang_, is a popular programming language built by Google. Its design and structure help you write efficient, reliable...
httptest package - net/http/httptest - Go Packages
Reach persistent R from Pi through DuckDB and ducknng
A thin R and Pi integration layer that composes ducknng RPC manifests and calls with nanonext, nanoarrow, and mirai. It provides a persistent R evaluator and generic Pi discovery/call tools without re-implementing NNG transport, process scheduling, AIO, or transport security.
Dynamically Load Assembler Code in R
An attempt at making R load and execute assembler code on the fly.
typed_sexp - Rust
Typed-SEXP
R’s C API
gpio Deep Review
Twelve-agent code, architecture, and docs assessment of geoparquet-io with a prioritized six-tier improvement plan.
Partitioning Files - geoparquet-io
Fast I/O and transformation tools for GeoParquet files
Aggregating Data - geoparquet-io
Fast I/O and transformation tools for GeoParquet files