Skip to content
magmalake
Overview Tins Performance Correctness Status Blog Issues GitHub

Writing

Notes from the build

Longer pieces about the parts that turned out to be interesting — what the APIs should look like, and what the measurements actually say.

  • The parquet.mojo performance bar

    Flat columnar reads are ahead of pyarrow on one core and on four, writes are at parity, and nested data loses before threading comes into it.

    4 September 2026
  • Multithreading with origins in Mojo 1.0

    The typed context in the previous post erased the origin of the state it shared, and the compiler destroyed that state before the threads started. Here is the one-line fix, the library change behind it, and a test harness that holds the compiler to what it catches and what it does not.

    2 September 2026
  • The parquet.mojo correctness bar

    Our native Parquet reader now reads 66 of the 69 files in Apache's own corpus.

    1 September 2026
  • Writing async-like code in durable execution

    Write straight-line Mojo. If the process dies halfway through, it resumes without redoing the work that already succeeded. Here is the whole API, and how to handle every way a step can fail.

    1 September 2026
magmalake

Data lake building blocks in Mojo. Early, and built in the open.

Project

GitHub organisation Issues & proposals iceberg.mojo parquet.mojo threads.mojo

Packaging

mojoshelf.org The Mojo language

Standards

Apache Iceberg Apache Parquet Apache Avro

Copyright 2026 Marius Seritan. Every repository is licensed Apache-2.0.

Apache Iceberg, Parquet, Avro and Thrift are trademarks of the Apache Software Foundation. This project is not affiliated with or endorsed by the ASF or Modular.