Rust, with the extremely easy async programming needed something like this for a long time. Not a toy but very extensive library geared towards production use ...
I'd like to nominate shawshank. I was having a lot of trouble with string cloning and fixing that through keeping all strings in one place and having references everywhere else. When I found Shawshank I was so happy, it really easy to use
Shawshank gives a simple arena datastructure and interface for interning data. It's basically an arena with maximal sharing, when you give it the same data twice it will only keep one copy. Give it some data to own, it gives you back an id to access it later. With the id you can get a borrow to data, or remove (disintern) the data.
great crate Sigh, not an obvious name to find it ... BTW, internationalization support for it would be cool, i.e. you can intern multiple languages and pull one you need or if nothing there, pull out default language. It would need to read the usual GNU internationalizaiont .po stuff though ...
pest (PEG parser) is a good candidate as Crate of the Week. It is quite simple to get used to it, grammar is easy to learn and read. 1.0 is approaching (beta.3 at the time of writing. Works especially fine for languages and text parsing. Not to forget, itβs fast. Doc does exist.
Candidate for crate-of-the-week: derive_builder. It was already crate-of-the-week in issue 169, but I think it's cool enough to get another mention after six months or so.
I'll suggest one of my own crates. enum-primitive-derive This helps improve the ergonomics when having to wrap up existing code by allowing you to crate C-like enums to encompass #define's and then transition back and forth between them easily. It was a pattern I've written many times over the years and finally wrote a custom derive for it to hopefully make it easier for everyone.
I'm not generally against it, but all I ever see in TWiR are very solid crates, with serious purpose. I think a bit of humor (and danger) might liven up things a bit this week. I hereby self-nominate spanquist for crate of the week.