parenchyma
parenchyma copied to clipboard
RFCs to consider
Extending coherence with workspaces proposal
If merged, the "extending coherence with workspaces" proposal would allow authors to implement traits for types defined within the workspace it's associated with.
Under the proposal, a separate impl
for Backend
in each framework-specific crate would be possible, allowing for a different synchronize
method per framework.
Vague proposal: Extending coherence with workspaces:
Moreover, cargo features don't necessarily compose all that well: if I have for example one crate that needs Ethanol+Serde and one that wants Ethanol by itself, cargo won't necessarily figure out that it should take the union of the feature flags (it's also not obvious that this is the correct thing to do in the first place). All in all, doesn't feel (to me) like the right solution.
Proposals:
- Orphan rules are stricter than we would like
- Vague proposal: Extending coherence with workspaces
- Automatic features
Example
// workspace-root/backends/cuda/src/framework.rs
use parenchyma::Backend;
impl Default for Backend<Cuda> {
fn default() -> Self { .. }
}
Trait alias
Once [RFC#1733] is approved, use it in place of the current work around.