A minimal String type for Julia that allows for efficient string representation and transfer
6 Stars
Updated Last
1 Year Ago
Started In
June 2016


A string type for minimizing data-transfer costs in Julia

PackageEvaluator Build Status


The package is registered in METADATA.jl and so can be installed with Pkg.add.

julia> Pkg.add("WeakRefStrings")

Project Status

The package is tested against Julia 0.6 and nightly on Linux, OS X, and Windows.

Contributing and Questions

Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems or would just like to ask a question.


Usage of WeakRefStrings is discouraged for general users. Currently, a WeakRefString purposely does not implement many Base Julia String interface methods due to many recent changes to Julia's builtin String interface, as well as the complexity to do so correctly. As such, WeakRefStrings are used primarily in the data ecosystem as an IO optimization and nothing more. Upon indexing a WeakRefStringArray, a proper Julia String type is materialized for safe, correct string processing. In the future, it may be possible to implement safe operations on WeakRefString itself, but for now, they must be converted to a String for any real work.

Additional documentation is available at the REPL for ?WeakRefStringArray and ?WeakRefString.