Contents

🔖 Julia Utilities

General Julia utilities1

See also

  • 🏚️ means the package may not support current versions of Julia.
  • 🏗️ means the package may be a WIP.

General Utilities

  • FilePaths.jl :: A type based approach to working with filesystem paths in julia.
  • SO.jl :: Personal macros for Julia by @dlfivefifty.
WIP or may not work
  • 🏚️ Events.jl :: Simple Event system.
  • 🏚️ Graze.jl :: A feed reader.
  • 🏚️ Humanize.jl :: Humanize numbers, based on the Python package humanize by @jmoiron. (No Project.toml)
  • 🏚️ Osmosis.jl :: Chat client for Julia.
  • 🏚️ Utils.jl :: Some utility functions by @SimonDanisch.

File Compression

  • Blosc.jl :: The Blosc Module provides fast lossless compression for the Julia language by interfacing the Blosc Library, currently limited to 32-bit buffer sizes.
  • GZip.jl :: A Julia interface for gzip functions in zlib.
  • InfoZIP.jl :: ZIP Archive Interface. Wrapper for Info-ZIP (and ZipFile.jl).
  • Libz.jl :: Yet another zlib interface for Julia.
  • ZipFile.jl :: Read/Write ZIP archives in Julia.
WIP or may not work
  • 🏚️ gzip.jl :: GunZip in Julia.
  • 🏚️ Snappy.jl :: A Julia wrapper for the snappy library - a compression/decompression library focusing on speed. (No Project.toml)
  • 🏚️ Zlib.jl :: Zlib bindings for Julia.

Microsoft Windows

  • WAV.jl :: Julia package for working with WAV files.
  • XCB.jl :: XCB windowing library wrapper.
  • ConfParser.jl :: Julia package for parsing configuration (*.ini) files.
WIP or may not work
  • 🏚️ COMCall.jl :: COM Interface for Julia.
  • 🏚️ IniFile.jl :: Reading and writing Windows-style INI files. (No Project.toml)
  • 🏚️ IUP.jl :: Julia interface to IUP windowing toolkit.
  • 🏚️ RawFile.jl (No Project.toml)
  • 🏚️ Win32GUIDemo.jl :: Call the Windows API with these Win32 GUI examples.
  • 🏚️ Wine.jl :: Sniffing the wineserver protocol for fun and profit.
  • 🏚️ WinReg.jl :: Windows Registry interface for Julia. (No Project.toml)
  • 🏚️ WinUser.jl :: wrapper for windows native windowing functions.

Terminal

  • ArgParse.jl :: Package for parsing command-line arguments to Julia programs.
  • Comonicon.jl :: command line interfaces.
  • DocOpt.jl :: generates a command-line arguments parser from human-readable usage patterns and it is a port of DocOpt written in the Julia language.
  • FTPClient.jl :: Julia FTP client using LibCURL.jl.
  • LibArchive.jl :: Wrapper for libarchive.
  • OhMyREPL.jl :: Syntax highlighting and other enhancements for the Julia REPL.
  • ProgressMeter.jl :: Progress meter for long-running computations.
  • REPLMods.jl :: Mod your REPL and evaluate directly into any module on your path or defined within the current working module.
  • Termbox.jl :: A wrapper for Termbox, a lightweight text-based user interface library. OSX and Linux are currently supported, and the low-level interface is complete enough to re-implement the demo from the original package (see test/outputexample.jl).
  • TerminalExtensions.jl :: A package that makes Julia take advantage of cool terminal emulator features.
  • TerminalMenus.jl :: Simple interactive menus in the terminal.
  • VT100.jl :: Terminal Emulation for terminal UI verification.
WIP or may not work
  • 🏚️ AnsiColor.jl :: Support for ANSI colored strings in Julia. Supported in REPL/Shell environment for both Unix and Mac.
  • 🏚️ CLI.jl :: A library for automatically generating command line interfaces from absolutely Julia object, inspired by python-fire.
  • 🏚️ GMT-julia-headers
  • 🏚️ LineEdit.jl :: Julia readline-like library.
  • 🏚️ MetaTools.jl :: Handy MetaProgramming whatnots for Julia.
  • 🏚️ NCurses.jl :: NCurses bindings for Julia.
  • 🏚️ REPL.jl :: Pure-julia REPL implementation.
  • 🏚️ REPLCompletions.jl :: Tab completions for your Julia REPL.
  • 🏚️ SaveREPL.jl :: A package for saving entries in the Jula REPL.
  • 🏚️ TerminalUI.jl :: Terminal User Interface.
  • 🏚️ TermWin.jl :: NCurses based GUI helper and data navigators.
  • 🏚️ toolbox.jl :: Small tools and snippets used by @natj with julia.

Benchmarking and profiling

Links:

Julia Microbenchmarks against other programming languages

Packages:

  • BenchmarksTools.jl :: A benchmarking framework for the Julia language.
  • ConicBenchmarkUtilities.jl :: Julia utilities for the conic benchmark format for mathematical optimization.
  • CPUTime.jl :: A module for CPU timing.
  • DataBench.jl :: A package to benchmark data manipulation in Julia vs R data.table.
  • ProfileSVG.jl :: Write flame graphs to SVG format and explore them interactively in Jupyter, Pluto, etc.
  • ProfileView.jl :: Visualization of Julia profiling data
  • SimplexBenchmarks :: Benchmarks comparing individual operations of the Simplex method for linear programming in Julia and other languages. Uses modified version of jlSimplex to generate data from real instances.
  • StatProfilerHTML.jl :: Show Julia profiling data in an explorable HTML page.
WIP or may not work
  • 🏚️ Benchmark.jl :: A package for computing simple benchmarks, comparing functions and packages.
  • 🏚️ BenchmarkLite.jl :: A lightweight Julia package for simple performance benchmark.
  • 🏚️ Benchmarks.jl :: A new benchmarking library for Julia.
  • 🏚️ Criterion.jl :: A port of the Haskell’s Criterion and Clojure’s Criterium library to Julia, that runs benchmarks, analyzing the results using various statistical techniques.
  • 🏚️ IACA.jl :: A wrapper around intel’s arch code analyzer for Julia.
  • 🏚️ IProfile :: Replaced by profile in Julia base.
  • 🏚️ ISPC.jl :: Tools to work with ISPC in Julia.
  • 🏚️ julia_qsortbenchmarks :: Suggested improvements to Julia’s Quicksort implementation.
  • 🏚️ JuliaBenchmarks :: Porting HPC Challenge benchmarks to Julia.
  • 🏚️ Perftests.jl :: Base perftests for Julia.
  • 🏚️ SortPerf.jl :: Julia module to test the performance of sorting algorithms.
  • 🏚️ USERTime.jl :: A Julia package for measuring elapsed user time.

Compilers

  • Clang.jl :: Julia interface to libclang and C wrapper generator.
  • llvm-cbe :: A resurrected LLVM C Backend, with improvements for Julia.
  • PackageCompiler.jl :: Compile your Julia Package.
WIP or may not work
  • 🏚️ CompilerOptions.jl :: A Julia package for reading compiler options.
  • 🏚️ CompilerTools.jl :: The CompilerTools package, part of the High Performance Scripting project at Intel Labs.
  • 🏚️ Eglib.jl :: Clang.jl wrapping example, C code from @kindlmann.
  • 🏚️ JITTools.jl :: Tools for working with in-memory object.
  • 🏚️ julia-icc-travis :: Build Julia using icc on the Travis CI.
  • 🏚️ LLVM.jl :: A Julia package for LLVM.
  • 🏚️ ParallelAccelerator.jl :: The ParallelAccelerator package, part of the High Performance Scripting project at Intel Labs.

Preprocessor

  • SnoopCompile.jl :: Make your packages work faster with more extensive precompilation - Spy on the JIT-compiler and learn which functions & types it’s compiling.

  1. Julia.jl is under COPYRIGHT © 2012-Now SVAKSHA, dual-licensed for the data (ODbL-v1.0+) and the software (AGPLv3+), respectively. ↩︎