--- title: T-spec meeting 2025-04-10 tags: ["T-spec", "meeting", "minutes"] date: 2025-04-10 discussion: https://rust-lang.zulipchat.com/#narrow/stream/399173-t-spec/topic/Meeting.202025-04-10 url: https://hackmd.io/WHcz7FynRTyAYCLhNgYcew --- Attendees: - Joel Marcey - Eric Huss - TC - Pierre-Emmanuel Patry - Sam Wright (Ferrous Systems) - Josh Triplett - Niko Matsakis - Pete LeVasseur - Nurzhan Saken - Jack - Sid Askary Regrets: Agenda: - Any updates to the agenda? - Ferrous spec/doc assistance - FLS transition update - Floats with empty exponent as valid tokens - Rust Week question ## Updates to the agenda? No updates ## Ferrous spec assistance Sam Wright from Ferrous: Developer facing documentation for years. Mostly reference tutorials and how-tos Joined Ferrous systems in December to do that work. Not involved with making the FLS at all. Willing to learn. Not sure what we need help with yet, but can spend 2-3 hours a week. Joel: Nothing specifically we need help with yet. Still getting the repo over to the Project. Then we want to publish it with our Project processes. Then looking at content. NM: I'd like to see us make progress on bringing the docs closer together. I had started a process of trying to adapt the Reference material into the FLS structure. I had started on method resolution. It'd be interesting, Sam, if you could look into this sort of thing. It's a challenging writing exercise. ## FLS transition update Joel: Everything is still on track to get the repo moved over. We're finalizing some logistical items. Some people have been out. We won't be finalizing this until early next week probably. The plan is still in effect as we had talked about this week. TC: As had been discussed publicly before, one of the things happening is that we're working to clarify and clean up the licensing situation. This is to make everyone feel comfortable about the situation here and to ensure the Project has what it needs both today and moving forward. ## Floats with empty exponent as valid tokens https://github.com/rust-lang/rust/pull/131656#issuecomment-2790458013 TC: This is an interesting one that came up on the lang side. We're considering this lexer change, and that brought back up the document from mattheww that tries to describe the lexer. We had talked about whether we wanted to integrate that document somehow. But more broadly, we should discuss how we want to document changes like the one we're considering making here. https://mjw.woodcraft.me.uk/2024-lexeywan/pretokenising.html vs https://doc.rust-lang.org/reference/tokens.html vs https://spec.ferrocene.dev/lexical-elements.html TC: Eric has railroad diagrams in progress for the Reference: https://ehuss.github.io/reference/items/structs.html The big story here is that this includes a parser for ABNF and allows the entire grammar for Rust to be put in one place in the Reference. Then both the grammar and the diagrams are rendered with all cross-links added automatically. So documenting the lexer in a way that's compatible with this has some value. NM: Having looked through these things now, I agree that aligning around documenting these in terms of ABNF makes sense. It happens that this is what the FLS does as well. Niko's axioms: * **Correct and complete.** Nothing matters if it's wrong or unmaintinable and hence out of date. * **Clearest, best option over the long term.** We want to build a reference that will be great, if something is leading us into a local maximum but will be limiting over time, we should consider changing. * **Compatible with FLS, preserve precedent.** Changes have cost to FLS users. We shouldn't make them lightly. NM: I'd like to see us add the lookahead into the ebnf, not sure what precedent exists. I think it'd be cool to have the regex as non-normative content that we can compare (and test!) against. ## Rust Week Joel: Who wants to join me in a `spec-room` at Rust Week? Josh: Schedule permitting, willing to join. Joel: Will find out more details from Mara. Pete: Willing to join as well as it pertains to Coding Guidelines. Sit in exile with Joel. Joel: Loves company in exile. ## Safety-critical TC: Pete, remind us, where's the work on this document happening, and what's your role and background here? Pete: We're iterating here: https://github.com/rustfoundation/safety-critical-rust-coding-guidelines It's inspired by the FLS and is using similar tooling like Sphinx. After doing a lot of C/C++ coding, I joined Woven by Toyota, and I'm chairing the initiative on the Foundation side for the Safety-Critical Consortium. ## Chat https://hackmd.io/WHcz7FynRTyAYCLhNgYcew 8:05 avatar Josh Triplett Josh Triplett says:👏 8:05 T TC TC says:Minutes: https://hackmd.io/WHcz7FynRTyAYCLhNgYcew 8:15 avatar Niko Matsakis Niko Matsakis says: https://spec.ferrocene.dev/lexical-elements.html#syntax_rawstringliteral 8:21 T TC TC says: https://ehuss.github.io/reference/items/structs.html 8:22 PL Pete LeVasseur Pete LeVasseur says:👏 8:22 Niko Matsakis Niko Matsakis says:my camera is misbehaving 😕 8:42 Pete LeVasseur Pete LeVasseur says: https://github.com/rustfoundation/safety-critical-rust-coding-guidelines 8:43