lloydmeta / frunk

Funktional generic type-level programming in Rust: HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid and friends.
https://beachape.com/frunk/
MIT License
1.24k stars 56 forks source link

Discussion: shall we make std an optional extension? #233

Open Ben-PH opened 4 months ago

Ben-PH commented 4 months ago

It seems to me that this project deserves to be a no-std crate by default. From what I can gather, only a few things rely on alloc (see also #220 ), with no reliance on the standard library, at least when it comes to the core-concepts being dealt with.

In terms of just HList, the only non-core items I came across is the into-vec implementation, and that should probably be updated to alloc-gated per #220

Is it worth being no-std first and foremost to maximize compatibility, adding no-std to the cargo-toml keyword list, etc.?