We Use Julia, 10 Years Later

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • StaticCompiler.jl

    Compiles Julia code to a standalone library (experimental)

  • Yeah, it's definitely in the early stages still, but this time I think there's much more infrastructure, and more people around with the right knowledge to advise on StaticCompiler's development, that I'm currently feeling pretty good about it's future.

    Here's the feature roadmap https://github.com/tshort/StaticCompiler.jl/issues/59 that should help people understand what currently works and what I hope I can reasonably accomplish. No firm timetables though, I'm working on this on my free time for now.

  • julia

    The Julia Programming Language

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • ProtoStructs.jl

    Easy prototyping of structs

  • > But the REPL lacks the ability to redefine structs on the go

    ProtoStructs.jl: https://github.com/BeastyBlacksmith/ProtoStructs.jl

  • www.julialang.org

    Julia Project website

  • GPUCompiler.jl

    Reusable compiler infrastructure for Julia GPU backends.

  • I don't think it's frowned upon to compile, many people want this capability as well. If you had a program that could be proven to use no dynamic dispatch it would probably be feasible to compile it as a static binary. But as long as you have a tiny bit of dynamic behavior, you need the Julia runtime so currently a binary will be very large, with lots of theoretically unnecessary libraries bundled into it. There are already efforts like GPUCompiler[1] that do fixed-type compilation, there will be more in this space in the future.

    [1] https://github.com/JuliaGPU/GPUCompiler.jl

  • LoopVectorization.jl

    Macro(s) for vectorizing loops.

  • And the "how" behind Octavian.jl is basically LoopVectorization.jl [1], which helps make optimal use of your CPU's SIMD instructions.

    Currently there can some nontrivial compilation latency with this approach, but since LV ultimately emits custom LLVM it's actually perfectly compatible with StaticCompiler.jl [2] following Mason's rewrite, so stay tuned on that front.

    [1] https://github.com/JuliaSIMD/LoopVectorization.jl

    [2] https://github.com/tshort/StaticCompiler.jl

  • StaticTools.jl

    Enabling StaticCompiler.jl-based compilation of (some) Julia code to standalone native binaries by avoiding GC allocations and llvmcall-ing all the things!

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts