Mateusz Kubuszok's Avatar

Mateusz Kubuszok

@kubuszok.com

Hearth Core Macro Hacker Blog @ https://kubuszok.com JVM-Scala Book @ https://leanpub.com/jvm-scala-book Chimney @ https://chimney.scalaland.io

217
Followers
63
Following
36
Posts
14.11.2024
Joined
Posts Following

Latest posts by Mateusz Kubuszok @kubuszok.com

Preview
Release v1.9.0 Β· scalalandio/chimney Changelog: Add supports for NamedTuple (#766). by @ETCHKILI in #852

Thanks to Guo Yubin Chimney now supports NamedTuples!

Grab it at:
- github.com/scalalandio/...
- github.com/scalalandio/...

10.03.2026 09:50 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - nguyenyou/circe-sanely-auto: Sanely-automatic Encoder/Decoder derivation for Circe on Scala 3 Sanely-automatic Encoder/Decoder derivation for Circe on Scala 3 - nguyenyou/circe-sanely-auto

One more proof by construction that we can improve derivation in #scala with #macros:

github.com/nguyenyou implemented sanely automatic derivation for Circe, and got some really nice numbers.

github.com/nguyenyou/ci...

06.03.2026 10:18 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I was drinking beer and approving the runs on the phone (via Happy) xD What I saw was really encouraging. How encouraging?

This is what I have one week later:

github.com/MateuszKubus...

27.02.2026 16:23 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Last week I went out for a Friday night beer with friends, and left Claude running. After recent batches of improvements I hoped that Hearth was finally at the stage when I would be able to write a whole type class derivation with no bugs in my macro utilities. #scala #macros

27.02.2026 16:23 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

I wish cross-compilable macros, with potential to provide UX that mops the floor with all these shapeless/mirrors based-libraries were not just a hypothetical possibility...

Oh, wait.

Scala 2.13: scastie.scala-lang.org/MateuszKubus...

Scala 3: scastie.scala-lang.org/MateuszKubus...

22.02.2026 18:55 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Claude just finished writing me a sbt codegen, which generates >17 000 lines of code of macros and compiler plugins... which would be expanded in other macros to provide cross-compilable type constructor representation.

When I started Hearth I didn't expect to go so meta

18.02.2026 15:14 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
My presentations Personally, just a

On this day ten years ago, I gave my first public presentation...

Fast forward ten years, I still suck :)

kubuszok.com/presentation...

28.01.2026 21:48 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Mateusz Kubuszok:  Can we have the Standard Library for Macros? [Scala Days 2025]
Mateusz Kubuszok: Can we have the Standard Library for Macros? [Scala Days 2025] Do you like it when compiler generates the boring code for you? Fast, mundane, boring-but-error-prone code? Do you need to implement such a code generator yourself? Have you found out that Shapeless/Mirrors bend your brain a bit too much? Congratulations! You might have a valid use case for writing

πŸ” A thoughtful, down-to-earth look at what a shared macro library could mean for Scala developers.
Here’s "Can we have the Standard Library for Macros?" by Mateusz Kubuszok

12.12.2025 09:27 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Mateusz Kubuszok:  Can we have the Standard Library for Macros? [Scala Days 2025]
Mateusz Kubuszok: Can we have the Standard Library for Macros? [Scala Days 2025] Do you like it when compiler generates the boring code for you? Fast, mundane, boring-but-error-prone code? Do you need to implement such a code generator yourself? Have you found out that Shapeless/Mirrors bend your brain a bit too much? Congratulations! You might have a valid use case for writing

πŸ” A thoughtful, down-to-earth look at what a shared macro library could mean for Scala developers.
Here’s "Can we have the Standard Library for Macros?" by Mateusz Kubuszok

12.12.2025 09:27 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

New video, with Łukasz BiaΕ‚y from @scala_space!

https://www.youtube.com/watch?v=K_omndY1ifI

06.12.2025 00:15 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Mateusz Kubuszok:  Can we have the Standard Library for Macros? [Scala Days 2025]
Mateusz Kubuszok: Can we have the Standard Library for Macros? [Scala Days 2025] YouTube video by Scala Days Conferences

@scaladays.org videos are online!

If you wish #scala #macros were a bit easier, and wonder what "this Hearth library" is about, go see:

youtu.be/VOdeXTpw3m0

26.11.2025 16:57 πŸ‘ 7 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Scala Times Issue #604 - scalatimes.com/f99e9094b8

22.11.2025 20:34 πŸ‘ 3 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Preview
Release 0.2.0 - Overall improvements, ValDefs builders and cache, Better Printers, more robust Cross Quotes and More Β· MateuszKubuszok/hearth This release delivers the full scope planned for the 0.2.x milestone: refining everything introduced in 0.1.0, strengthening stability, improving ergonomics, and expanding documentation and tooling...

Hearth 0.2.0 just dropped continuing the quest for user-friendly macros. #scala #macros

github.com/MateuszKubus...

20.11.2025 16:29 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

Welcome Mateusz Kubuszok as the #Scalarconf 2026 speaker!

πŸŽ™οΈ Can we have the Standard Library for Macros?

🎟️ Grab your ticket here: scalar-conf.com/tickets

#scala #scalarconf #functionalprogramming

17.11.2025 11:00 πŸ‘ 7 πŸ” 1 πŸ’¬ 0 πŸ“Œ 1

This is probably the most complete tutorial on typeclasses in Scala 3, it's basically a short book. Bookmark it, as it has everything: givens, derivation, mirrors, inline defs, macros... you name it. #scala kubuszok.com//2025/sanely...

04.11.2025 19:46 πŸ‘ 5 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

#scala #metaprogramming #typeclasses because, of course, I forgot

03.11.2025 17:00 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It also reminded my why, I stopped - putting everything I know into 1 writeup is such a PITA but I do not want it any other way.

03.11.2025 16:54 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Sanely-automatic derivation - or how type class derivation works and why everyone else is doing it wrong In Scala, we generate quite a lot of code. A lot of that involves the compiler generating so-called type class instances. This mechanism is quite widespread, yet, very few people actually understand i...

I haven't blogged in a while, but this needed to be written:

kubuszok.com/2025/sanely-...

03.11.2025 16:53 πŸ‘ 5 πŸ” 1 πŸ’¬ 1 πŸ“Œ 1
Preview
Release v2.0.0-M2 Β· scalalandio/chimney Important Since Chimney got affected by 3.7.0 change in givens resolution we had to analyze the possible ways of fixing the issue. While there is a temporary workaround the proper fix requires rele...

Chimney 2.0.0-M2 for 2.13.17+ and 3.7+ just landed!

* sanely-automatic derivation backported to 2.13
* aligned with featues/bugfixes up till 1.8.2

Try out, if you had any issues with semiauto on Scala 3.7 or if you want to test sanely-auto on 2.13!

github.com/scalalandio/...

21.10.2025 20:47 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Great thanks to all organizers of @scalaio.bsky.social! It was a great experience I am happy I could be there.

18.10.2025 10:21 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Release 0.1.0 - Inintial release Β· MateuszKubuszok/hearth It took longer than I hoped but 0.1.0 is live and with some scaffolded documentation. There are some gaps in the documentation, e.g. no examples for utilities usage, no mention of sources and debug...

The first release is done, better macros are possible

github.com/MateuszKubus...

03.10.2025 06:57 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Can we have the Standard Library for Macros? (@kubuszok.com): makes simple things simple, and hard things (at least) possible πŸš€

Event Sourcing is just a foldLeft on Events and a decide function! Or is it? (Matthieu Baechler & Thomas Hilaire): master of immutability but UPDATE db all day long ? πŸ‘€

25.09.2025 13:44 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Post image

Thank you everyone who came to my talk at @scaladays.org ! It was amazing to be here!

You can find my slides at mateuszkubuszok.github.io/ScalaStandar...

21.08.2025 16:00 πŸ‘ 4 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
hearth/hearth-tests/src/main/scala/hearth/demo/ShowMacrosImpl.scala at f4b7828eaecd6b154514832a51b1756f6a29fd37 Β· MateuszKubuszok/hearth The first Scala macros' standard library. Contribute to MateuszKubuszok/hearth development by creating an account on GitHub.

That #Scala code does something, that many considered impossible. Could you guess why?

github.com/MateuszKubus...

10.08.2025 18:13 πŸ‘ 3 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
GitHub - scalalandio/chimney: Scala library for boilerplate-free, type-safe data transformations Scala library for boilerplate-free, type-safe data transformations - scalalandio/chimney

Feedback reaches authors faster when they don't have to use a mix of "search by string in random social media" (no mentions, hashtags, etc) combined with Google Translate :P

Discussions, issues and PRs are welcome at github.com/scalalandio/...

25.07.2025 16:37 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
The future of Chimney Β· scalalandio chimney Β· Discussion #762 TL;DR - I intent to develop only what is necessary to keep the library working (when changes in the compiler would make the currently working code make it no-longer working code, like with 3.7-give...

If you're missing some feature in Chimney - contribute it!

github.com/scalalandio/...

16.07.2025 17:00 πŸ‘ 3 πŸ” 1 πŸ’¬ 0 πŸ“Œ 1
Preview
Newtypes and tagged types Newtypes and tagged types. GitHub Gist: instantly share code, notes, and snippets.

Some time ago I made a presentation that wasn't recorded...

But at least some of the points from it could be showcased with this gist

gist.github.com/MateuszKubus...

16.07.2025 13:09 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Scala Days 2025
Can we have the Standard Library for Macros
Mateusz Kubuszok
8.21.2025 | Track 4, 11am, Hall 1

Scala Days 2025 Can we have the Standard Library for Macros Mateusz Kubuszok 8.21.2025 | Track 4, 11am, Hall 1

It seems #Scala folks are interested in macros once more!

So, let's meet at the @scaladays.org 2025 to talk why we would want some standard library for them and how!

30.05.2025 10:46 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Databricks Runtime 16.4 LTS | Databricks Documentation Release notes about Databricks Runtime 16.4 LTS, powered by Apache Spark.

I had hardly any exposure to Apache Spark, and Databricks is mostly irrelevant to me...

Still I am curious why nobody in my circle noticed that Databricks released runtime for Scala 2.13. Now only sbt is the reason to keep publishing for 2.12
docs.databricks.com/aws/en/relea...

21.05.2025 20:05 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Post image

πŸš€ Metals v1.5.3 is here!

Introducing:
- MCP server support for AI agents
- new inlay hints for named/by-name parameters
-improved test discovery for ZIO
- better auto-fill arguments
- using directives worksheet support.

Try it now! #Scala #IDE

scalameta.org/metals/blog...

13.05.2025 15:02 πŸ‘ 5 πŸ” 3 πŸ’¬ 0 πŸ“Œ 2