JuliaCon 2026

Patrick Häcker

  • Studies of Electrical Engineering and Information Science at University Stuttgart
  • PhD in statistical signal processing at University Stuttgart
  • Working for Bosch in different roles on perception systems for road and rail vehicles

Sessions

08-13
15:45
15min
Handle your handles
Patrick Häcker

Handles can be used instead of explicitly using pointers or references to access objects. This is done by storing the objects of a given type in a Memory or Vector and using the handle as an index. With a suitable abstraction, which Handles.jl provides, it turns out that this combines attractive properties like being faster than object references in certain situations and being safer than regular indexing for a static set of objects. Therefore, handles provide a pattern which might be interesting to use in large parts of the Julia ecosystem where efficiency matters and certain constraints hold.

General
Alte Mensa — Atrium Maximum
08-14
14:30
15min
Every Bit Counts
Patrick Häcker

Julia supports defining new integer types. However, they are currently limited to byte size. Until this restriction is lifted, we can emulate arbitrary bit-sized integers with larger byte-sized ones which should behave identical to future native bit-sized integers. This is what EmulatedBitIntegers.jl does as a generalization of BitIntegers.jl to non-byte-sized integers.

This emulation produces unused bits. Often, structs can be used to combine such types with other emulated integers, making use of the unused bits of one emulated integer to store the content of another emulated integer. This is done with PackedStructs.jl which allows annotating structs to have their fields packed on bit-level to not waste a single bit, because: Every Bit Counts!

General
Muschel — N3