Sign in

SMT

@pp0196.bsky.social
499 followers 790 following 539 posts

Sequences and consequences. Credit Pic : Cellular landscape cross-section through a eukaryotic cell, by Evan Ingersoll

PostsRepliesMedia
SMT @pp0196.bsky.social · 12/09/2026
CanardAbsurd: Durable #RStats workflows with DuckDB state and Quack remote SQL (Slop) Sloppy attempt to solve some recurring issues around durability (and resumption) especially for (frontend or api) exposed (costly) workflow coordination. repo: github.com/RGenomicsETL...
010 0
SMT @pp0196.bsky.social · 07/09/2026
the lisp point is very funny given the author www.stat.auckland.ac.nz/~ihaka/downl... By the way, are people privy to the R-like rewrite he talks about in that talk ?
110 0
SMT @pp0196.bsky.social · 15/08/2026
CRAN is on vacation
100 0
SMT @pp0196.bsky.social · 28/07/2026
#CRAN Release of version 1.5.1-0.1.3 of Rduckhts: #RStats Bindings to the #htslib based #DuckDB extension for HTS file formats This comes with a BigWig reader via libBigWig used with (WIP)DuckVEP: the fastest Ensembl VEP-compatible consequence predictor in the West written in #C #Bioinformatics
031 0
SMT @pp0196.bsky.social · 25/07/2026
#RStats is this SSL issue on cran.r-project.org/submit.html restricted to me or others are facing the same issue ?
110 0
SMT @pp0196.bsky.social · 18/07/2026
i don t have the list, just a cryptic mention here www.stats.ox.ac.uk/pub/bdr/disc...
030 0
SMT @pp0196.bsky.social · 10/07/2026
CRAN release of version 1.4.0-0.1.0 of Rduckhts, the #RStats It was also nice to confirm that are our port of Brent Pedersen 's great mostdepth algorithm is likely the fastest for that application space in the West. But riker shows us there is space for memory bounding !
010 0
SMT @pp0196.bsky.social · 08/07/2026
ggmlR from Yuri Baramykov is a great #RStats package, i re-use the big work of the selective ggml build infra for the related Rfmalloc Project ggmlR: github.com/Zabis13/ggmlR Rfmalloc monorepo : github.com/sounkou-bioi...
022 0
SMT @pp0196.bsky.social · 06/07/2026
This is for the real lovers of esoterica RSTT: Work-in-progress set-theoretic type algebra for the R language by Mickaël Laurent #RStats, #OCaml, #C API, Programming language theory and set theory repo : github.com/E-Sh4rk/rstt/ with a REPL !
161 0
SMT @pp0196.bsky.social · 01/07/2026
since i am doing lot of pi based vibesloping these days and R markdown is my testing framework, made piknit #RStats package with Slope Code for a coming work github.com/sounkou-bioi...
030 0
SMT @pp0196.bsky.social · 29/06/2026
cited Marx one time in a session, and now Slope Code autocompletes "idealist" at each new concepts "discovery". Below i suggest let's see what are the lazy eval/effect type of libraries in the Typescript (for my own culture) world just like in #RStats : --->Idealist
110 0
SMT @pp0196.bsky.social · 10/06/2026
Beware #Rstats users, according to Misanthropic, an R to C transpiler is a security risk 😄 Fable turned out to as expected to be La Fable I think some french speaker at Misanthropic is doing some kind of joke with these model names
130 0
SMT @pp0196.bsky.social · 07/06/2026
Rbebelm: #RStats Bindings for 'BebeLM' 'CPU' Inference For A 8B-1B Active model, not that bad A tiny R CLI "Agent" inspired by Corteza github.com/cornball-ai/... repo: github.com/sounkou-bioi... Upstream Rust crate : github.com/maximecb/beb... LFM2.5-8B-A1B blog: www.liquid.ai/blog/lfm2-5-...
021 0
SMT @pp0196.bsky.social · 03/06/2026
Ropendal: Abstract Filesystem access in #Rstats via 'Apache OpenDAL' R/Rust package using #savvy and exporting a C API because i for whatever reason i frequently download terabytes from Google Drive. Async API is heavily by #nanonext. Several time faster than paws for most ops at MinIO baseline
130 0
SMT @pp0196.bsky.social · 28/05/2026
RsimdDispatch: Runtime 'SIMD' Dispatch Templates for 'C' Code in #RStats Packages hellorust.multiversion: Minimal Rust SIMD Multiversioning Example for #RStats A way to enjoy both Linux binary Packages and Optimized code at runtime. github.com/sounkou-bioi... github.com/sounkou-bioi...
010 0
SMT @pp0196.bsky.social · 20/05/2026
The package is linked to specific duckdb versions because the C extension used in the package take advantage of a few DuckDB unstable C API for arrow conversion and query streaming, binding utilities etc. I guess this is the price, duckdb-r could use these internals in C++ and make Rducks moot
000 0
SMT @pp0196.bsky.social · 20/05/2026
Rducks: Register arbitrary #Rstats User-Defined Functions in duckdb-r (1.5.2) including (sacrilege) distributed chunk execution mode via #mirai+libnng. Arrow C Data marshaling dance that that may be removed later. Trivial #duckplyr integration. Stream DuckDB queries repo: github.com/sounkou-bioi...
121 0
SMT @pp0196.bsky.social · 19/05/2026
#duckplyr with no fallbacks, because why not Learned that prefixing a function call with `dd$` is a way to call arbitrary duckdb functions (in our case a registered #RStats UDF) duckplyr.tidyverse.org/dev/articles...
051 0
SMT @pp0196.bsky.social · 19/05/2026
to get rid of the whole arrow conversion dance. the vibeslope reproduction of the format in the ducknng extension is already competitive with quack over http (and ws too) github.com/sounkou-bioi...
100 0
SMT @pp0196.bsky.social · 19/05/2026
@hannes.muehleisen.org are their plans to expose the (de) serialization primitives used in quack in the next C (unstable) stable API? Wld allow some (ridiculous) applications like the multiprocess/distributed #RStats scalar UDF execution mode via arrow IPC i am using here github.com/sounkou-bioi...
100 0
SMT @pp0196.bsky.social · 17/05/2026
Some performance tuning (row batching size, schema sharing, streaming) get the ducknng arrow IPC to 30% slower than quack_query at 10 Million rows, our own adaptation of the DuckDB internal application/vnd.duckdb serializer is 20% faster than quack_query ! Even faster over tcp #nng #DuckDB #quack
000 0
SMT @pp0196.bsky.social · 17/05/2026
Reproduction of the drogonR benchmark after addition of additional #RStats http frameworks No-op setup (adding some actual work should be fairer to plumber2-mirai) drogonR 10x>> nanonext 2x> RestRServe 10x>> httpuv/plumber(2) Vibecoded repo for issues with the setup github.com/sounkou-bioi...
032 0
SMT @pp0196.bsky.social · 17/05/2026
my guess is a httpuv2 is needed - since the dragonR package uses later package too - or use the nanonext http server directly which is also 1 order of magnitude faster than plumber(2) in this setup
200 0
SMT @pp0196.bsky.social · 17/05/2026
RestRserve is an order of magnitude faster than httpuv in this "not much work" setup LLM generated repo (hence the ridiculous JIT params here :D) github.com/sounkou-bioi...
110 0
SMT @pp0196.bsky.social · 17/05/2026
Plumber2 is actually slightly slower. I guess expected since it is the same httpuv event model
110 0
SMT @pp0196.bsky.social · 17/05/2026
drogonR: High-performance HTTP server for #RStats, powered by the Drogon C++ framework by Yuri Baramykov Order of magnitude faster than httpuv/plumber with SSE support out of the box github.com/Zabis13/drog... #Network
1145 0
SMT @pp0196.bsky.social · 17/05/2026
ggmlR: #Rstats bindinds to 'GGML' Tensor Operations for Machine Learning by Yuri Baramykov github.com/Zabis13/ggmlR #DeepLearning
151 0
SMT @pp0196.bsky.social · 13/05/2026
Will sometimes likely released a self contained Rducknng packages for CRAN or merged it with the #RStats UDF for DuckDB project that also use nanonext/nng/mirai and mori for Parallel execution of UDFs. ducknng : github.com/sounkou-bioi... Rducks : github.com/sounkou-bioi...
000 0
SMT @pp0196.bsky.social · 13/05/2026
Some of speed comparison with the recently release DuckDB #quack extension. As expect quite slower over HTTP due to the Arrow IPC conversions overhead. Can reach #quack if Duckdb serialization API become public C API (Raw socket sent much faster than #quack)
110 0
SMT @pp0196.bsky.social · 13/05/2026
Release of version 0.1.1 of the duckdb community extension ducknng: a nanonext inspired DuckDB C extension providing binding to the NNG scalability protocols and a Arrow IPC RPC based Framework Call into any NNG (or http) speaking runtime. What better example than calling a nanonext #RStats server
150 0
SMT @pp0196.bsky.social · 04/05/2026
#RStats package s7contract: 'Go'-Like Interfaces and 'Rust'-Like Traits with 'S7' with progressive runtime type checks opt-in github.com/sounkou-bioi...
060 0
SMT @pp0196.bsky.social · 02/05/2026
the project (of dubious usefulness ) of a DuckDB extension for arbitrary #RStats UDFs for #DuckDB's R client is taking shape, with some optimizations only for the fun of it. Totally thread unsafe for now since queuing tasks of Duckdb worker threads to be executed on the R main thread is dubious
030 0
SMT @pp0196.bsky.social · 01/05/2026
Prompted by this post and the fact that Go-Like Interfaces and S7 where something on my mind for a long time, so i prompted a (sycophantic) LLM to implement a slow Go-Like interfaces on top of S7 (zero type safety, but this can be corrected with) + rust like trait system github.com/sounkou-bioi...
001 0
SMT @pp0196.bsky.social · 24/04/2026
For segfault lovers #CRAN Release of Rtinycc v0.1.8 For 'C' Scripting in #RStats Binding to libctcc and a declarative C FFI framework including thread safe R callbacks in C Code The package remove the R2C code transformation work to a coming downstream work github.com/sounkou-bioi...
011 0
SMT @pp0196.bsky.social · 23/04/2026
Long live the tinyverse ! unrelated (because lot of typescript/javascript bloat), pi-agent skill for running recursive LLMs with a webR repl (entirely build by in pi in few session :D) Related somehow because pi is the tiny coding LLM framework github.com/sounkou-bioi...
150 0
SMT @pp0196.bsky.social · 23/04/2026
#duckdnng, a shameless #DuckDB extension which is LLM enabled copy pasta of the excellent handcrafted #Rstats #nanonext C code and API design
020 0
SMT @pp0196.bsky.social · 10/04/2026
I was very happy that i managed to get to compile htslib for the #webr environment and the duckhts bundle in the #RStats package, but then i see that i incorrectly assumed that the #DuckDB platform was wasm_mvp, it is Linux_i686_musl instead
010 0
SMT @pp0196.bsky.social · 09/04/2026
#Bioinformatics #Nextflow #RStats Mostly vibecoded Nextflow R plugin nanoarrow on R side, Arrow in JVM/Groovy side github.com/sounkou-bioi...
020 0
SMT @pp0196.bsky.social · 31/03/2026
due to limitations of the duckdb extension repo around assets, had to embed during build time the libtcc1.a and the headers to generate them at the runtime lol So the extension is fully self contained (at least on unix-alikes
001 0
SMT @pp0196.bsky.social · 31/03/2026
#Ducktinycc 'C' scripting in #Duckdb via #TinyCC Of course what better example than the embedded #RStats example from "Writing R extensions". With a bit more work (and threading issue stuff) this can be extended into some arbitrary R UDFs API for the r-duckdb Repo: github.com/sounkou-bioi...
130 0
SMT @pp0196.bsky.social · 31/03/2026
#RStats #Rduckhts version 1.1.4-0.0.1 released On CRAN Besides hts format I/0, some sequence UDFs and a port of BCFtools score, liftover and munge plugins to run using #DuckDB for post-GWAS ops The R-agnostic #Duckdb community extension update on its way too A funny thing in the ports, floats !
020 0
SMT @pp0196.bsky.social · 27/02/2026
#ridiculousbutcool Embedding #RStats in #Duckdb via #TinyCC and Duckdb's C extensions API
000 0
SMT @pp0196.bsky.social · 26/02/2026
#Duckdb #TinyCC Ridiculous, dangerous but cool ! (very roundabout way to test out ideas of a potential api for a #RStats UDFs extension) Link for segfault lovers : github.com/sounkou-bioi...
020 0
SMT @pp0196.bsky.social · 19/02/2026
#RStats When i was looking at some of the perf in quickr readme, i was thinking oh these tails are R's garbage collection pauses, the R-to-C (LLM enabled) rabbit hole i went in makes the pauses worse because it is really R to R's C API and sometimes calling into R via Rf_eval :D
002 0
SMT @pp0196.bsky.social · 17/02/2026
#tinycc based #RStats #C #Transpiler, only 4x slower than #{quickr} for the convolution benchmark ! 2-3x faster than naive #C + marshaling. #tinycc transpilation will have an obvious advantage since it can always fallback when transpiling and use `Rf_lang3` since it has access to R's C runtime !
014 0
SMT @pp0196.bsky.social · 12/02/2026
#Rstats to avoid if/else and switch death in this project, a functional and centralized (reviewable) definition of the rules for future improvements, i thought that #{lambda.r} package's (by Brian Lee Yung Rowe) pattern matching would be great github.com/zatonovo/lam...
011 0
SMT @pp0196.bsky.social · 12/02/2026
#RStats the comparison results with #{quickr} is expected since tinycc is not an optimizing compiler like gfortran/flang, but still since you don t need an additional compiler at runtime and you can iterate (more segfault :D) very fast ! (no windows support for now/never)
022 0
SMT @pp0196.bsky.social · 09/02/2026
#RStats Rduckhts: 'DuckDB' 'HTS' File Reader Extension for 'R' Sitting on the shoulders of the great #htslib API and the duckdb C API Package : rgenomicsetl.r-universe.dev/Rduckhts
Rduckhts: 'DuckDB' 'HTS' File Reader Extension for 'R'

Bundles the 'duckhts' 'DuckDB' extension for reading 'HTS' file formats (VCF/BCF, SAM/BAM/CRAM, FASTA, FASTQ, GFF, GTF, tabix) from 'R' via 'DuckDB'. The extension and its 'htslib' dependency are compiled from vendored sources during package installation.

Authors:Sounkou Mahamane Toure [aut, cre], htslib authors [ctb], DuckDB C Extension API authors [ctb]

Rduckhts_0.1.1-0.0.1.tar.gz
Rduckhts_0.1.1-0.0.1.zip(r-4.6)Rduckhts_0.1.1-0.0.1.zip(r-4.5)Rduckhts_0.1.1-0.0.1.zip(r-4.4)
Rduckhts_0.1.1-0.0.1.tgz(r-4.6-any)Rduckhts_0.1.1-0.0.1.tgz(r-4.5-any)
Rduckhts_0.1.1-0.0.1.tar.gz(r-4.6-any)Rduckhts_0.1.1-0.0.1.tar.gz(r-4.5-any)
Rduckhts.pdf |Rduckhts.html✨
Rduckhts/json (API)
NEWS
# Install 'Rduckhts' in R:
install.packages('Rduckhts', repos = c('https://rgenomicsetl.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/rgenomicsetl/duckhts/issues0 issues

On CRAN: no

3.75 score 12 exports 2 dependencies

Last updated0 hours ago from:e99a28a305. Checks:7 OK, 1 NOTE, 1 FAIL. Indexed: yes.
Citation

To cite package ‘Rduckhts’ in publications use:

    Toure S (2026). Rduckhts: 'DuckDB' 'HTS' File Reader Extension for 'R'. R package version 0.1.1-0.0.1, https://github.com/rgenomicsetl/duckhts.

Corresponding BibTeX entry:

  @Manual{,
    title = {Rduckhts: 'DuckDB' 'HTS' File Reader Extension for 'R'},
    author = {Sounkou Mahamane Toure},
    year = {2026},
    note = {R package version 0.1.1-0.0.1},
    url = {https://github.com/rgenomicsetl/duckhts},
  }

Rduckhts: DuckDB HTS File Reader Extension for R

Rduckhts provides an R interface to a DuckDB HTS (High Throughput Sequencing) file reader extension. This enables reading common bioinformatics file formats such as VCF/BCF, SAM/BAM/CRAM, FASTA, FASTQ, GFF, GTF, and tabix-indexed files directly from R using SQL queries via duckhts.
How it works

Following RBCFTools, tables are created and returned instead of data frames. VCF/BCF, SAM/BAM/CRAM, FASTA, FASTQ, GFF, GTF, and tabix formats can be queried. We support region queries for indexed files, and we target Linux, macOS, and RTools. htslib 1.23 is bundled so build dependencies stay minimal. The extensnion is built by adapting the generic extension infracstructure by using only makefiles unlike unlike the submitted communtity extension duckhts.
Installation

The package can be installed from github

remotes::install_github(
    "RGenomicsETL/duckhts", subdir = "r/Rduckhts")`.

System Requirements

Installation requires htslib dependencies such ad zlib and libbz2, and optionally for full functionally liblzma, libcurl, and openssl. The package requires GNU make. On Windows’s Rtools, htslib plugins are not enable.Quick Start

The extension is loaded with rduckhts_load(con, extension_path = NULL). We can create tables with rduckhts_bcf, rduckhts_bam, rduckhts_fasta, rduckhts_fastq, rduckhts_gff, rduckhts_gtf, and rduckhts_tabix using the parameters documented in their help pages

library(DBI)
library(duckdb)
library(Rduckhts)


ext_path <- system.file("extdata", "duckhts.duckdb_extension", package = "Rduckhts")
fasta_path <- system.file("extdata", "ce.fa", package = "Rduckhts")
fastq_r1 <- system.file("extdata", "r1.fq", package = "Rduckhts")
fastq_r2 <- system.file("extdata", "r2.fq", package = "Rduckhts")
con <- dbConnect(duckdb::duckdb(config = list(allow_unsigned_extensions = "true")))
rduckhts_load(con, extension_path = ext_path)
#> [1] TRUE

rduckhts_fasta(con, "sequences", fasta_path, overwrite = TRUE)
rduckhts_fastq(con, "reads", fastq_r1, mate_path = fastq_r2, overwrite = TRUE)

dbGetQuery(con, "SELECT COUNT(*) AS n FROM sequences")
#>   n
#> 1 7
dbGetQuery(con, "SELECT COUNT(*) AS n FROM reads")
#>    n
#> 1 10
FASTA, BAM, FASTQ, READER
013 0
SMT @pp0196.bsky.social · 07/02/2026
#RStats Rtinycc : Builds 'TinyCC' 'Cli' and Library for 'C' Scripting in 'R' Package Link for Segfault lovers: github.com/sounkou-bioi...
Rtinycc is an R interface to TinyCC, providing both CLI access and a libtcc-backed in-memory compiler. It includes an experimental FFI inspired by Bun’s FFI for binding C symbols with predictable type conversions and pointer utilities. The package targets Unix-alike systems and focuses on embedding TinyCC and enabling JIT-compiled bindings directly from R. Combined with treesitter.c, which provides C header parsers, it can be used to rapidly generate declarative bindings.
043 0
SMT @pp0196.bsky.social · 27/01/2026
added has comment to your gist
111 0