Skip to content

Update minutes and skill tree #22

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
May 14, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions minutes/design-2020-03-10.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# traits design meeting 2020.03.10

## topic

Discussion on impl Trait (mostly)

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E10/near/190216727)

## summary

Key points in the discussion:
* [updates on Interner](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E10/near/190219031)
* [impl Trait](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E10/near/190219649)
15 changes: 15 additions & 0 deletions minutes/design-2020-03-17.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# traits design meeting 2020.03.17

## topic

Sprint discussion, builtin traits and types

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E17/near/190902377)

## summary

Key points in the discussion:
* [`TyData::Fn`](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E17/near/190904085)
* [sprint discussion](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E17/near/190905134)
* [builtin traits](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E17/near/190907418)
* [recursive solver vs SLG](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E17/near/190909029)
14 changes: 14 additions & 0 deletions minutes/design-2020-03-24.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# traits design meeting 2020.03.24

## topic

Sprint recap, next sprint goals

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E24/near/191663614)

## summary

Key points in the discussion:
* [Things accomplished](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E24/near/191664933)
* [Tracing](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E24/near/191665617)
* [Next sprint discussion](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E24/near/191665917)
16 changes: 16 additions & 0 deletions minutes/design-2020-03-31.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# traits design meeting 2020.03.31

## topic

New sprint, who dis

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192441350)

## summary

Key points in the discussion:
* [How to organize the sprint](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192443140)
* [Chalk releases](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192444969)
* [What is needed in the book?](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192446459)
* [Implied bounds](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192447465)
* [Planning design meetings](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E03.2E31/near/192448605)
17 changes: 17 additions & 0 deletions minutes/design-2020-04-07.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# traits design meeting 2020.04.07

## topic

const in Chalk

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193239347)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193240567)
* [what is a const](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193241542)
* [design considerations for chalk consts](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193242623)
* [Mututal recursion of consts](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193243417)
* [When do we want to implement](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193246061)
* [`Fold` and `Visit` naming](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E07/near/193246520)
15 changes: 15 additions & 0 deletions minutes/design-2020-04-14.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# traits design meeting 2020.04.14

## topic

Sprint progress review

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E14/near/193948519)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E14/near/193949754)
* [Sprint progress review](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E14/near/193950312)
* [Chalk book](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E14/near/193951120)
* [Chalk releases](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E14/near/193953084)
15 changes: 15 additions & 0 deletions minutes/design-2020-04-21.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# traits design meeting 2020.04.21

## topic

Implied bounds

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E21/near/194853430)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E21/near/194853602)
* [What are implied bounds](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E21/near/194854642)
* [Reasoning of `FromEnv`](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E21/near/194856679)
* [WellFormed goals](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E21/near/194858563)
16 changes: 16 additions & 0 deletions minutes/design-2020-04-28.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# traits design meeting 2020.04.28

## topic

Builtin types/traits, link check, opaque types, const types

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195618205)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195618377)
* [Builtin types/traits](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195619901)
* [Link check](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195622231)
* [Opaque types](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195624119)
* [const types](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E04.2E28/near/195625661)
16 changes: 16 additions & 0 deletions minutes/design-2020-05-05.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# traits design meeting 2020.05.05

## topic

leak check, `ObjectSafe` and `Outlives` goals, const PR discussion

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196359047)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196359487)
* [Universe transition in rustc](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196360573)
* [Leak cheak](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196361190)
* [`ObjectSafe` and `Outlives`](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196363704)
* [const PR discussion](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E05/near/196365991)
14 changes: 14 additions & 0 deletions minutes/design-2020-05-12.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# traits design meeting 2020.05.12

## topic

Sprint recap

[Zulip thread](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E12/near/197329732)

## summary

Key points in the discussion:
* [Recent activity](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E12/near/197329871)
* [How do we want to keep minutes](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E12/near/197330803)
* [Sprint recap](https://rust-lang.zulipchat.com/#narrow/stream/144729-wg-traits/topic/design.20meeting.202020.2E05.2E12/near/197332669)
12 changes: 6 additions & 6 deletions roadmap.toml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ items = [
{ label="support the `Sized` trait", status="Complete", href="https://github.com/rust-lang/chalk/issues/261" },
{ label="support the `Clone` trait", status="Complete", href="https://github.com/rust-lang/chalk/issues/363" },
{ label="support the `Copy` trait", status="Complete", href="https://github.com/rust-lang/chalk/issues/363" },
{ label="model `ObjectSafe` goals", status="Assigned", href="https://github.com/rust-lang/chalk/pull/434" },
{ label="model `ObjectSafe` goals", status="Complete", href="https://github.com/rust-lang/chalk/pull/434" },
{ label="support the `Unsized` trait", status="Assigned", href="https://github.com/rust-lang/chalk/pull/427" },
{ label="extend `TypeName` with builtin types", href="https://github.com/rust-lang/chalk/issues/368" },
{ label="support the `Fn` traits", status="Blocked" },
Expand All @@ -116,10 +116,10 @@ href = "https://github.com/rust-lang/wg-traits/issues/18"
requires = [ "map-chalk-types-to-rustc-types", "chalk-const", "chalk-builtin", "chalk-outlives" ]
items = [
{ label="remove old chalk support", status="Complete", href="https://github.com/rust-lang/rust/pull/69247" },
{ label="exploratory integration to better uncover requirements", href="https://github.com/rust-lang/rust/pull/69406", status="Assigned" },
{ label="map rustc types to chalk types", status="Assigned" },
{ label="map rustc predicates to chalk goals, clauses", status="Assigned" },
{ label="implement RustIrDatabase in trait", status="Assigned" },
{ label="exploratory integration to better uncover requirements", href="https://github.com/rust-lang/rust/pull/69406", status="Complete" },
{ label="map rustc types to chalk types", status="Complete" },
{ label="map rustc predicates to chalk goals, clauses", status="Complete" },
{ label="implement RustIrDatabase in trait", status="Complete" },
]

[[group]]
Expand All @@ -138,7 +138,7 @@ label = "Improve ability to debug chalk from within rustc or rust-analyzer"
requires = [ ]
items = [
{ label="Integrate tracing library", href="https://github.com/rust-lang/chalk/issues/337", status="Assigned" },
{ label="Extract standalone examples automatically" },
{ label="Extract standalone examples automatically", href="https://github.com/rust-lang/chalk/issues/365" },
]

[[goal]]
Expand Down
4 changes: 4 additions & 0 deletions sprints/2020-1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FIXME: add an overview of work done in 2020 sprint 1

Link to summary blog post:
https://blog.rust-lang.org/inside-rust/2020/03/28/traits-sprint-1.html
70 changes: 70 additions & 0 deletions sprints/2020-2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# wg-traits sprint 2020-03-31 ..

**Pulled from https://hackmd.io/kYWsWI9IS0213x0qX_1RDw on 2020/5/14**

* Goal: Rustc integration MVP ([tracking issue](https://github.com/rust-lang/wg-traits/issues/18))
* Initial integration work landed
* Made a lot of progress towards extending chalk to support builtin types and traits
* Currently using some hacks in rustc for some of them
* Next steps:
* Extend chalk to be able to represent all of the Rust types [chalk#368](https://github.com/rust-lang/chalk/issues/368)
* Connect rustc types to the builtin chalk types
* Auto trait handling for builtin chalk types
* Handling int and float literal inference variables
* Region / outlives integration
* Bound inference variables, perhaps?
* Goal: Plan for what const integration looks like ([tracking issue](https://github.com/rust-lang/wg-traits/issues/15))
* Held [initial meeting](https://zulip-archive.rust-lang.org/144729wgtraits/23279designmeeting20200407.html) and designed a minimal subset
* Implementing a [pending PR](https://github.com/rust-lang/chalk/pull/393) which uncovered some interesting questions about how to represent constants
* Next steps:
* [Resolve `GenericArg` handling](https://github.com/rust-lang/chalk/issues/452)
* Land [chalk#393](https://github.com/rust-lang/chalk/pull/393) which will offer basic constant support
* it has been reviewed and we are working out the [list of test cases](https://hackmd.io/Ah_J6nFQSbuUiVOsH5acLg)
* next steps:
* incorporate some mention into the chalk book
* Goal: Move towards alignment of rustc and chalk types, and towards extracting a shared library ([tracking issue](https://github.com/rust-lang/wg-traits/issues/16))
* [Doc from meeting](https://hackmd.io/roRq0qHMQ6CyRJxj_FsPSQ)
* Extended chalk types to support builtin rust types and traits
* Refactoring of predicates on rustc side to be interned and match chalk conventions [rust-lang/rust#72055](https://github.com/rust-lang/rust/pull/72055)
* Next steps:
* Finalize naming conventions and rename as necessary
* Create issues around rustc side
* Goal: basic support for impl Trait ([tracking issue](https://github.com/rust-lang/chalk/issues/335))
* basic support has landed: [PR #324](https://github.com/rust-lang/chalk/pull/324), :tada:
* working now on adding better generics support
* [Next steps](https://github.com/rust-lang/chalk/issues/335#issuecomment-615254659)
* Goal: progress towards removing leak check in rustc ([tracking issue](https://github.com/rust-lang/rust/issues/59490))
* Landed [#70950](https://github.com/rust-lang/rust/pull/70950) which aligns NLL with lexical checker
* but to truly remove leak check we have to resolve some back-compat interactions
* Next steps:
* rustc refactoring to move leak check to occur later, which unblocks lazy norm and a few other changes
* explore a smarter variant of leak check that takes into account implied bounds and is able to continue accepting wasm-bindgen
* Goal: exploration and research
* exploring recursive solver (flodiebold)
* initial version has landed and been integrated into rust-analyzer
* Follow-up items:
* fix coinduction [chalk#399](https://github.com/rust-lang/chalk/issues/399)
* revisiting the chalk-solve crate structure
* documenting how it works in chalk-book
* comparison between it and SLG checker
* explore converting semantic-to-syntactic equality
* [draft PR opened](https://github.com/rust-lang/chalk/pull/401)
* create a chalk file from any given program
* [draft PR opened](https://github.com/rust-lang/chalk/pull/430) and it's starting to work
* Goal: increase Chalk performance (very open-ended)
* Create a set of benchmarks
* no progress
* Add tracing support
* opened a [draft PR](https://github.com/rust-lang/chalk/pull/409)
* Track memory usage and try to decrease as necessary
* no progress
* Goal: add more to Chalk book
* Added [chalk big picture](http://rust-lang.github.io/chalk/book/#high-level-view-of-how-chalk-works) material
* Moved content from [rustc-dev-guide](https://rustc-dev-guide.rust-lang.org/traits/chalk-overview.html)
* Added [table tracking the well-known traits](http://rust-lang.github.io/chalk/book/clauses/well_known_traits.html#current-state)
* Next steps:
* glossary and notation for common terms
* the `?0` notation
* the `^0` notation
* the `!0` notation
* what is a "bound variable", an "inference variable", and a "placeholder variable", and what do they *mean* semantically