trait A Foo + Bar
is supported if Bar
is a marker trait (leaving the more general case for future work), or we add an addendum to this effect, which either NM or tmandry might write.NM: Unavailable for 2023-10-11 meeting due to types team meetup.
Others: Free for all Wednesdays this month.
const
" #222fn { mod { (use) super::...; } }
and its interaction with derive patterns" #193Please update these in https://github.com/orgs/rust-lang/projects/31/views/7.
bf16
, f64f64
and f80
types - #3456Make a section and put in things that potentially interest you, and/or things you don't feel you need to be involved for.
Would like to be involved in the discussion:
Curious to see discussed, don't know that I have to be involved:
bf16
, f64f64
and f80
types - #3456 โ I'm sure this is important. I just have very little to add.sizeof(slice::Iter<'!, T>)
without needing bounds on T
โ but last I heard it was really hard to make sound, so might be a direction discussion instead.bf16
and such I feel like I more want a "use literals with custom types" RFC first.NM: Should we just FCP this?
tmandry: I'll do it.
Jubilee: There is an open concern about whether people will accidentally stabilize huge APIs.
NM: Maybe we should have a design meeting with a broader scope about overloading the unsafe
keyword.
pnkfelix: Maybe there should be a lint.
NM: There is some subtlety there.
scottmcm: Maybe the trusted
keyword would help here. One of the questions is whether we should require safe fn
.
TC: We could FCP this, then also separately consider those things. If those other things take a long time or don't happen, maybe this is still a good idea on its own.
NM: That is the question. I find my enthusiasm is tempered by considering these other things.
scottmcm: The one thing that makes me pause is that it's not obvious what exactly is the transition mechanism.
TC: I've talked with Lokathor about this. He's aware he needs to add it to the document. It's clear what cargo fix
should do here.
NM: It's probably worth having a meeting about this. Something like this is clearly the direction we want to go, but there are things to discuss.
Room: The RFC needs more motivation stated.
Jubilee: There is a deep motivation.
TC: Could you make a PR for that?
Jubilee: Yes, I can write that up.
"""
in string literalspnkfelix: We may want to talk about how much we want to invest in this space.
tmandry: I think I'm in favor of both of the RFCs.
pnkfelix: The unified string literals makes the raw string syntax redundant.
(Discussion about the scope of unified string literals.)
TC: One of the things we may want to discuss is the potential interaction with format!
. In Swift, where this is pulled from, there is that interaction, and it's part of what makes it motivating in Swift.
(Discussion about that, about fstrings, etc.)
NM: Looking at the future possibilities, those seem more exciting to me. I see the motivation here.
tmandry: I kind of like triple quotes.
NM: If we do the unified string literals, I'd like to get rid of raw string literals to keep complexity down.
tmandry: Anyone want to talk me down from triple quotes?
TC: Do you mean three or more?
tmandry: Three or more.
scottmcm: The C# rule seems to be three or more.
TC: These seem to fall under the category of "dare to ask for more". There are some quality of life improvements possible here.
NM: fstrings are maybe worth thinking about. That's maybe a true "dare to ask for more". It would make it so much more ergonomic to get capital strings.
TC: Does that maybe encompass a const
format!
that produces a &'static str'
?
NM: Interesting, yes, it could.
Jubilee: There are people who want it to be String
and there are people who want it to be a language primitive. If you wind up with String + format_args!/format_sting!
, you have to do an allocation and merge the two semantically. The people who want it to be format_args!
care a lot about it not having extra allocations or use the alloc
crate.
scottmcm: C# has $
-strings which is a spin on fstrings
.
TC: It does seem like a new design should take into account laziness.
NM: It does seem that this comes up a lot, and there are motivations for both. I'll leave feedback on the RFC for the unified string literals.
scottmcm: These are potentially interesting, but they're not edition-dependent. We might want to prioritize the 2024 things.
TC: Maybe we should review the 2024 edition survey.
NM: We should publish our schedule more widely. We have various places for it now. At one time we made blog posts.
TC: The source of truth is the project on GitHub for the schedule, since that's what is pulled in by triagebot. I've been making certain improvements to triagebot; one is that it now shows the dates of the scheduled meetings on our agenda. It pulls this from GitHub.
tmandry: Our page for design meetings links to the calendar page which points to our Google calendar.
TC: Let's update that page to link to the GitHub project for the schedule.
tmandry: I'm doing that.
(The meeting ended here.)
Link: https://github.com/rust-lang/lang-team/issues/21
Link: https://github.com/rust-lang/lang-team/issues/22
Link: https://github.com/rust-lang/lang-team/issues/51
Link: https://github.com/rust-lang/lang-team/issues/88
Link: https://github.com/rust-lang/lang-team/issues/137
Link: https://github.com/rust-lang/lang-team/issues/149
None.