# This month in Julia world - 2024-12

**URL:** https://discourse.julialang.org/t/this-month-in-julia-world-2024-12/124295
**Category:** Newsletter
**Created:** [December 31, 2024, 1:25am UTC](https://discourse.julialang.org/t/this-month-in-julia-world-2024-12/124295 "2024-12-31T01:25:17Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Krastanov](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/krastanov/32/6817_2.png) [@Krastanov](https://discourse.julialang.org/u/Krastanov)
#### Post date: [December 31, 2024, 1:25am UTC](https://discourse.julialang.org/t/this-month-in-julia-world-2024-12/124295/1 "2024-12-31T01:25:17Z")

</div>

A monthly newsletter, mostly on julia internals, digestible for casual observers. A biased, incomplete, editorialized list of what I found interesting this month, with contributions from the community.

“Internals” Fora and Core Repos (Slack/Zulip/Discourse/Github):

- Julia’s compiler has long had the ability to detect if memory allocations escape local scopes, and optimize them away in some cases when it can be proven they don’t escape. However, this existing ‘escape analysis’ in Julia has been limited and hasn’t actually enabled much optimisation. A new [overhaul of escape analysis](https://github.com/JuliaLang/julia/pull/56849) aims to be more accurate and open the door for implementing further memory optimisations in the future.
- Support for the independent external experimental Garbage Collector framework MMTk [is almost a reality](https://github.com/JuliaLang/julia/pull/56288).
- Another discussion on [current and future ways to work with interfaces and traits in Julia](https://discourse.julialang.org/t/interfaces-traits-in-julia-2-0-and-multiple-inheritance/124011). While these discussions are always informative, be careful as they also can be a bit bikesheddy.
- A small helpful discussion on [when does `@inbounds` increase performance](https://discourse.julialang.org/t/when-does-inbounds-increase-performance/123827)?

In search of contributors and new maintainers (specify novice/moderate/expert and internals/domain background necessary):

- The Center for Quantum Networks is running [many bounties and minigrants](https://github.com/QuantumSavory/.github/blob/main/BUG_BOUNTIES.md) on a variety of support packages for quantum information science.
- [SciML is running a large set of funded small projects](https://sciml.ai/small_grants/) – a great opportunity to contribute to the community and be paid for it.
- ChainRules, a foundational package to the Julia autodiff effort is looking for a [new primary maintainer](https://discourse.julialang.org/t/chainrules-project-looking-for-a-new-primary-maintainer/115636).

Ecosystem Fora, Maintenance, and Colab Promises (Slack/Zulip/Discourse/Github):

- The general package registry now [requires release notes on breaking releases](https://discourse.julialang.org/t/new-automerge-requirement-release-notes-required-for-breaking-package-releases/123955).
- Cute little [GUI](https://discourse.julialang.org/t/pre-ann-startyourpk-gui-for-pkgtemplates/124197) for creating Julia packages (on top of PkgTemplates.jl)
- [DispatchDoctor.jl](https://github.com/MilesCranmer/DispatchDoctor.jl) is a neat way to ensure your code is type stable.
- The benchmarking toolkit Chairmarks.jl now supports [benchmarking two functions in an interleaved fashion](https://discourse.julialang.org/t/chairmarks-supports-comparative-benchmarking/124166), avoiding potential sources of noise and bias.
- Julia is proving to be [really interesting for signal processing](https://discourse.julialang.org/t/julia-and-the-gps-payload-onboard-waratah-seed-1-satellite/123795) and real time control of space satellites.

Julia Autodiff ecosystem:

- [DynamicDiff.jl](https://discourse.julialang.org/t/ann-dynamicdiff-jl-fast-symbolic-differentiation-for-runtime-generated-expressions/123907), integrated with the larger SymbolicRegression.jl ecosystem, provides for blazingly fast differentiation of dynamically generated expressions without compilation overhead.
- [DifferentiationInterface.jl has great documentation](https://juliadiff.org/DifferentiationInterface.jl/DifferentiationInterface/dev/faq/differentiability/) with a useful overview of the ecosystem.

Notes from other ecosystems:

- [EmacsConf talk](https://emacsconf.org/2024/talks/julia/): “Exploring shared philosophies in Julia and Emacs” ([YouTube](https://www.youtube.com/watch?v=RTVXaDR697k))
- NumPy uses [avx-512 SIMD instructions when available for sorting](https://discourse.julialang.org/t/numpy-sort-vs-julia-sort/123421/7), leading to much higher performance

See also: [French community newsletter](https://pnavaro.github.io/NouvellesJulia/), [community calendar](https://julialang.org/community/#events), [minutes of triage meetings](https://hackmd.io/@LilithHafner/HJaw__uMp)

Please feel free to post below with your own interesting finds, or in-depth explanations, or questions about these developments.

If you would like to help with the draft for next month, please drop your **short** , **well formatted** , **linked** notes in [this shared document](https://docs.google.com/document/d/1Np1deH_W1o0EO7_tZkScveCLA0XiYg538ceUJs0bFpE/edit). Some of it might survive by the time of posting

---

<div class="post-metadata">

### Author: ![Fe-r-oz](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fe-r-oz/32/216415_2.png) [@Fe-r-oz](https://discourse.julialang.org/u/Fe-r-oz)
#### Post date: [January 2, 2025, 1:17am UTC](https://discourse.julialang.org/t/this-month-in-julia-world-2024-12/124295/2 "2025-01-02T01:17:10Z")

</div>

> [@Krastanov](#):
>
> Please feel free to post below with your own interesting finds,

A fast [Julia re-implementation](https://github.com/FluxML/Optimisers.jl/pull/196) of the low-rank Apollo optimizer from a very recent paper - [(Apollo: SGD-like memory, ADAMW-level performance)](https://arxiv.org/pdf/2412.05270) by Meta. 🙂

Apollo is a memory-efficient optimizer designed for large language model (LLM) training, offering significant memory savings and throughput improvements while maintaining competitive performance with [AdamW](https://pytorch.org/docs/stable/generated/torch.optim.AdamW.html).

Original Post: [@benjmurrell.bsky.social on Bluesky](https://bsky.app/profile/benjmurrell.bsky.social/post/3lcyfrf5b7k2u)

---

<div class="post-metadata">

### Author: ![e3c6](https://avatars.discourse-cdn.com/v4/letter/e/e79b87/32.png) [@e3c6](https://discourse.julialang.org/u/e3c6)
#### Post date: [February 24, 2025, 12:11pm UTC](https://discourse.julialang.org/t/this-month-in-julia-world-2024-12/124295/3 "2025-02-24T12:11:47Z")

</div>

Unfortunately it seems that Apollo PR has not merged yet.
