We just disagree; I think we can manage the current amount, and if we cannot manage, designs just don’t get accepted. The RFC process is therefore self-adaptive in the sense that it is rate limited by T-Lang’s bandwidth. We also prioritize designs based on size and what we believe is most needed right now. At least that is what I usually do when trying to nominate things for the agenda.
Aside: I’ve been trying hard to stabilize things the last month; I’ve looked at what can be stabilized and proposed stabilization for those; for all the rest it appeared to me that they were blocked on implementation work or open design questions.
I just feel that this already happens; but our time-frames around how long "shepherd"ing may take may vary.
Along the way some proposals just get blocked by design concerns that were either unforeseeable during the RFC’s discussion or we thought we had a solution but it turned out it wasn’t good enough. Specialization and associated type defaults are examples of this. const fn is another example, it was blocked a long time until I, Oliver and Eduard came to the realization that we should stabilize a smaller subset.
I agree with your point that some team member should be assigned to every RFC.
I cannot speak for other teams such as T-Libs or so, but my point is that for T-Lang this already happens on T-Lang meetings to the extent we have time; sometimes it may take a week or two to assign a member, but I think that’s fine.
Yep.
Well… The thing is that the foundational work on Chalk enables not just GATs, but from my understanding it also enables for<T: Debug> (and by extension generic closures), possibly where clauses on enum variants, fixing type aliases, getting inherent associated types, quantification over traits and associated traits, …
I would also say that something like for<T: Debug> is a large additive change from a user-end perspective, but once you have Chalk it’s not that big implementation wise I think. In lieu of already having for<'a> it could also be seen as fixing an inconsistency.
Sure, but just because they get proposed does not mean they will be accepted.
Doesn’t seem additive to me; seems like it fixes a syntactic inconsistency; mostly a bug-fix imo.
As you said it hasn’t been accepted yet.
I don’t want to rule out anything (because I don’t want to prematurely shut down debate) but all except the first of these seem unlikely to be accepted.
Sure, there was controversy, and for arg: impl Trait it was primarily after stabilizing; however, I don’t agree that insufficient design time was given to these or that T-Lang made a decision without thinking it through. These both seem like decisions T-Lang made in full view of the trade-offs.
Sure; I understand, I just disagree. Unlike some people who have been arguing that “Rust is complete”, I think there are substantial areas where it is incomplete. A language feature like for<T: Debug> or generic closures is a good example imo.
Sure, my point is just that things like associated type defaults, specialization, or multi-trait-objects are not blocked on implementation work, but by design which require RFCs and reaching consensus. Thus it’s not a matter of finishing.
I agree that Box<dyn Read + Write> is a natural thing to want, but the design work needs to be done by someone, an RFC needs to be filed, and T-Lang needs to agree before implementation work can begin. My main point here is that someone needs to do the work, and if you can do it, that is great.
I also think that for the people proposing new ways of writing loops or overloading, they probably have the same feeling as you that “it’s something quite natural to want IMO”. I don’t want to prejudge in what areas proposals may and may not be filed.
I think so. For example, one could be forgiven for thinking that default { ... } is a massive change to the language. Indeed, I am considering scaling back the RFC to make more incremental progress… More on this later!

Not only does it not increase linearly with the number of people working on them, we also have bors in the way making sure that PRs don’t get merged as quickly as we’d like. Even our CI infrastructure might not be able to cope.
Another problem is that not everyone is knowledgeable in the area of compiler development. for example, I’m not a compiler dev… I have been trying to implement one of my own RFCs, but it takes time to learn the compiler’s infrastructure.
I don’t see accepting features as an end in itself, I just think there are many areas where the language is incomplete and needs improvement to need the needs of people using it. Language design is one of the areas I feel I am most competent in (as opposed to working on rustc), so that is where I try to help out.