Julia 1.10 Released

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

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

    Relax! Flux is the ML library that doesn't make you tensor

  • Flux is quite a nice lower level library:

    https://github.com/FluxML/Flux.jl

    On top of that there are many higher level libraries such as Transformers.jl

    https://github.com/chengchingwen/Transformers.jl

  • Tidier.jl

    Meta-package for data analysis in Julia, modeled after the R tidyverse.

  • btw, there has been a pretty nice effort of reimplementing the tidyverse in julia with https://github.com/TidierOrg/Tidier.jl and it seems to be quite nice to work with, if you were missing that from R at least

  • 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
  • Transformers.jl

    Julia Implementation of Transformer models

  • Flux is quite a nice lower level library:

    https://github.com/FluxML/Flux.jl

    On top of that there are many higher level libraries such as Transformers.jl

    https://github.com/chengchingwen/Transformers.jl

  • Torch.jl

    Sensible extensions for exposing torch in Julia.

  • Lux.jl

    Explicitly Parameterized Neural Networks in Julia

  • Clang.jl

    C binding generator and Julia interface to libclang

  • Are there solid C interfaces that can be used?

    A large part of why I started using Julia is because calling into other languages through the C FFI is pretty easy and efficient. Most of the wrappers are a single line. If there is not existing driver support, I would pass the C headers through Clang.jl, which automatically wraps the C API in a C header.

    https://github.com/JuliaInterop/Clang.jl

    I most recently did this with libtiff. Here is the Clang.jl code to generate the bindings. It's less than 30 lines of sterotypical code.

    https://github.com/mkitti/LibTIFF.jl/tree/main/gen

    The generated bindings with a few tweaks is here:

    https://github.com/mkitti/LibTIFF.jl/blob/main/src/LibTIFF.j...

  • LibTIFF.jl

    Clang.jl generated wrapper around Libtiff_jll.jl

  • Are there solid C interfaces that can be used?

    A large part of why I started using Julia is because calling into other languages through the C FFI is pretty easy and efficient. Most of the wrappers are a single line. If there is not existing driver support, I would pass the C headers through Clang.jl, which automatically wraps the C API in a C header.

    https://github.com/JuliaInterop/Clang.jl

    I most recently did this with libtiff. Here is the Clang.jl code to generate the bindings. It's less than 30 lines of sterotypical code.

    https://github.com/mkitti/LibTIFF.jl/tree/main/gen

    The generated bindings with a few tweaks is here:

    https://github.com/mkitti/LibTIFF.jl/blob/main/src/LibTIFF.j...

  • 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
  • oorb

    An open-source orbit-computation package for Solar System objects.

  • astropy

    Astronomy and astrophysics core library

  • Astropy [0] lives at the heart of most work. It has a Python interface, often backed by Fortran and C++ extension modules. If you use Astropy, you're indirectly using libraries like ERFA [6] and cfitsio [7] which are in C/Fortran.

    I personally end up doing a lot of work that uses the HEALPix sky tesselation, so I use healpy [2] as well.

    Openorb is perhaps a good example of a pure-Fortran package that I use quite. frequently for orbit propagation [3].

    In C, there's Rebound [4] (for N-body simulations) and ASSIST [5] (which extends Rebound to use JPL's pre-calculated positions of major perturbers, and expands the force model to account for general relativity).

    There are many more, these are just ones that come to mind from frequent usage in the last few months.

    [0] https://www.astropy.org/

  • assist

    ASSIST is a software package for ephemeris-quality integrations of test particles. (by matthewholman)

  • erfa

    Essential Routines for Fundamental Astronomy. Maintainers: @eteq @mhvk @sergiopasra

  • Oceananigans.jl

    ๐ŸŒŠ Julia software for fast, friendly, flexible, ocean-flavored fluid dynamics on CPUs and GPUs

  • I think itโ€™s also the design philosophy. JuMP and ForwardDiff are great success stories and are packages very light on dependencies. I like those.

    The DiffEq library seems to pull you towards the SciML ecosystem and that might not be agreeable to everyone.

    For instance a known Julia project that simulates diff equations seems to have implemented their own solver

    https://github.com/CliMA/Oceananigans.jl

  • PyCallChainRules.jl

    Differentiate python calls from Julia

  • > Can I use PyTorch or JAX comfortably in Julia?

    There is https://github.com/rejuvyesh/PyCallChainRules.jl which makes this possible. But using some of the native Julia ML libraries that others have mentioned is preferable.

  • threads

    Threads for Lua and LuaJIT. Transparent exchange of data between threads is allowed thanks to torch serialization. (by torch)

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub 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