List of crates that improves or experiments with Rust, but may be hard to find

I think the original bool use case is gone, but I could see myself using that crate for storing optional floats, using NaN as the None value.

2 Likes

That's exactly what I plan to use it for.

2 Likes

typenum has no underscore nor does it use a lowly Peano encoding (it's a binary encoding!)

(edit: okay the peano thing was fixed, but that underscore is still there silently taunting at me)

1 Like

I tried to be careful how I mentioned peano followed by typenum... :man_shrugging:

1 Like

https://crates.io/crates/static_assertions

Extended the list from relevant "Crate of the Week" posts.

Can you please link the 'cargo-specific or related tools' section?

Done.

cargo license - List all dependencies by licence. There is also some alternative implementation, but I forgot the name.

cargo-lichking. Haven't researched them for their strengths or weaknesses.

proptest probably derserves a mention alongside quickcheck :slight_smile:

2 Likes

Maintainer of optional here. I was about to deprecate OptionBool when re-running the benchmarks still showed some measurable differences. So yes, it no longer has a space advantage, but it may sometimes have a time advantage.

Even without OptionBool, the crate still has option replacements for other types.

1 Like

Have you filed bugs for those?

2 Likes

cargo-make rust build tool and task runner.
comes with many default tasks to make any project development easier and automated.

rules was an incomplete experiment to bring Perl 6 style regex to rust. There is a lot which could be done to extend the project. I'm not sure if this is the type of thing you're looking for.

I definitely think this type of thing might be really positive in the long run but it would have be more fully implemented to verify in any fashion.

I made some crates that I think could fit onto the list.

  • array-macro - vec![something; 4] for arrays, not requiring a Copy implementation
  • reexport-proc-macro - probably useless with Rust 2018 where you can go pub use crate_derive::Trait, but allows reexporting a procedural derive, not requiring an user of a crate to have a dependency on derive crate
  • https://crates.io/crates/enum-map - just like EnumMap in Java, except for Rust, a map implementation optimized for enums implemented as an array

I made https://crates.io/crates/query_interface

It's like mopa but on steroids.

Aaarrggghhh!!! My most hated phrase!!!! :grinning:

4 Likes

The link to alga crate has lead me to the ScratchPad II ( http://www.csd.uwo.ca/~watt/pub/reprints/1990-miola-spadtypes.pdf ), it's another example how in computer science lot of important ideas were invented lot of time ago. It seems to contain a perhaps better version of the Rust traits... :-/

agree. i propose, instead of "on steroids": "gone to Hollywood" . as in

"It’s like mopa but gone to hollywood"

Yep, that is much more meaningful, but, I think you're looking for, "Gone Hollywood". Yep, definitely more meaningful than "on steroids". In the words of Borat, "NOT"! :slight_smile:

1 Like