DEV Community

Gabor Szabo
Gabor Szabo

Posted on • Originally published at rust.code-maven.com

2

Rust Source Code Reading: The thousands crate

Yesterday I had the first live code-reading event. I attempted to understand how the "thousands" crate works. 🦀 It can commafy a number converting a number such as 1234567 into a string like this "1,234,567" to make it more readable.

This is part of the Rust Maven live events series. During this event went over the implementation of this crate.

A couple of observations, and let me emphasize, this is not a (negative) critique of the crate or the author.

🦀 If there are tests, starting from them can help understanding the flow of the code. Unfortunately in some cases the tests themselves are a bit too complex. (This was not such case.)

🦀 If there is a nice and simple example of how to use the crate, we can start from that code trying to explore the implementation.

🦀 We could observe (or rather guess) the evolution of the crate from specific solution (dealing with digits) to more generic solution (dealing with any set of characters). Some variable/function/etc. names were using the generic vocabulary, some other were still in the original way talking about digits.

🦀 There are multiple ways to define type-constraints (e.g. immediately after the type-name or in a "where"-clause. Mixing them can confuse Gabor. (Maybe others as well. )

🦀 The audience in such code-reading can help.

🦀 One hour was not enough even for such small crate and even after I already invested some time trying to understand it.


🦀 Watch the recordings here

🦀 If you are interested in earlier (and future) live events check them out here.

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More