JuliaCon 2025

BasicAutoloads.jl: When I type this in the REPL, run that for me
2025-07-23 , Main Room 5

BasicAutoloads.jl allows you to automatically load packages on use in the REPL. This streamlines workflows without adding the startup cost or precompile and memory bloat of proactively loading packages. The API and semantics are both incredibly simple and, by virtue of supporting arbitrary Julia expressions, surprisingly powerful.


By registering an autoload of, for example, ["@profile", "@testset"] => :(using Test), when you type @test or @testset in the REPL for the first time Test will be automatically loaded. This is great for loading dev-tool packages that provide unambiguous names. With a load time plus TTFX of only 12ms and no dependencies, this package is quite suitable for inclusion in startup.jl files. This talk will tell the story of how this package came to be, supplanting several individuals' home-rolled auto-loading scripts, explain and motivate design decisions, and demonstrate how one can quickly integrate this package into a workflow.

Attendees will leave with a solid understanding of what BasicAutoloads has to offer; when it is helpful; what the costs of using it are; and, if they so choose, how to start using it in their workflows.