Add a meeting Rate this page

A

There is a bug: okay, take three, so I'm sharing this road map, sketch I, was saying to soon gain earlier. I think what I want would love to do is kind of we have this sort of long list here of stuff. I would like to kind of break it down into.

A

Things we sort of a rough triage at the ideal level of what we think we want to focus on and there's probably I think we might see some grouping or rice and then look a little more detail at some of the individual items like I I guess one thing that's worth even before we even start like when I say defining, who we is, is a little unclear to me so I think there there might be a couple of groups of people there's. Obviously some, let's see who is?

A

We there's obviously like compiler, laying split which is sort of light, semi artificial, but there's what I mean by who, as we as I, could imagine the trades group breaking into some kind of smaller groups that are more focused on individual tasks. A little bit and I. Don't quite know what those groups should be, um but I think that will be a possibly a useful thing to do.

A

So I think what I would probably prefer that said is well. One of the questions we should think about is like what kind of laying design questions do we think we should prioritize now, like we'll see at least a few categories like specialization, has kind of interesting questions around the choc chocolate vacation and then some around the like extensions to intersection, dimples or whatever, and that's kind of a nitty gritty thing and then there's stuff like cinta. You know where there's literally syntax.

B

Questions.

A

On the far extreme and design of that level, the user facing in a very direct way that sound like an accurate assessment of the situation. Okay,.

A

What the other thing I was telling Sanjay is that I've decided to give in and just adopt Dropbox paper as my tool of choice, meaning in addition that maybe we'll try to get people into the like rust group for like rust drop box team so that we can actually assign people things and use that it's kind of a nice just sort of like for the team planning level up. There will be a github issues where appropriate, but I don't want to go like create a whole bunch of github issues for like prospective work.

A

We plan to do or stuff like make a plan so okay. So all that said part of why I'm saying that is I find this document already sort of unmanageably, big and I'm thinking. I made a oh I, didn't I made a folder, but I didn't move it in there. Yet let me do that now: oh I didn't even make a folder. Let's do that. I was thinking of breaking some of it into separate documents like four different ideas, but possibly not life at this moment.

A

So there's like this list of stuff right- and some of it is reflected up here, and some of it is not so maybe the thing to do- let's first just go through them and look for like short-term ones, I guess so associated traits and quantification over traits. What even is this? This is: okay, we're not! This is like far future. It seems pretty clear.

B

I'm gonna tag it with Charlie gets I'm trying to get central in. He should be here in a second great.

A

Okay and I.

B

Think this is something he's particularly interested in I I. Agree that it's it's for our future, but it may be well central, can say more but I think like all right. Well, thinking about it, you know, okay,.

A

I, don't know if I agree, but that's okay, wait. We can have that conversation I.

C

Understand.

A

Why you might want to yeah? Maybe it's good, so, let's categorize it like this find of work requirement. I'll try to make some pockets.

A

How can I paste this without stuff.

A

You don't know, there's different I'm gonna leave it for now, because I actually don't really know what kind of work we foresee I see some different versions.

A

Okay, centrally you're hearing, hey we're talking about we're, trying to kind of go down this list and break down break down what kind of work we think there is for each of them, so we can sort of put them into buckets like which ones are worth really elaborating in great detail and I was trying to push back on the idea of pursuing associated traits and quantification over traits in the short term. But Aaron was telling me that you, you might think that you might be, might be wanting to do that so I'm, very so no.

D

That's good doesn't that doesn't seem realistic. Okay, maybe in at least at least four from an implementation perspective, because we don't even have my receipt. What.

A

What kind of work like it seems to me like there's a couple kinds of work here: there's I wrote down in this paper doc like describing the semantics basically I think there would be work just experimenting, ignoring kind of this index to a large extent and saying here's how it would look at the logical level there's. Obviously some work sketching out. The syntax. That seems obvious seems like that's about it. I don't know. I'm exploratory work well,.

D

There might be so if you use an Associated traits in or some quantify traits with trade objects, then you might get into trouble like do. We know that the trade and that do we know that the quantified trait is object, safe.

A

America, so it's basically exploring and finding the interesting questions like okay.

D

That seems like.

A

They think I think.

D

I licked, my sorry yeah.

A

I know I don't want to get I'm trying to like condense down from but too many details like this is a more detailed version of there, but where clause on enum variants. So this is basically giet up aka all right. So.

D

Said no extension, qualification, no constraints, he's.

A

Like this again is sort of the same nature of work as I would call these both like exploratory semantic work right.

D

And it's kind of.

C

There seems seems.

D

Like galets or enum, variants interact with a mellow in some way, perhaps.

D

Okay and at the very least pattern matching, because you need to get out the witness that that you need to extend the context with a witness. That's the type and the type phones are satisfies the constraints. You know.

A

I, don't know how to structure this in paper. Okay, that seems fine I'm, just gonna write it like this I'm hoping we can kind of group these into like the kind of work that is needed, and that will give us some idea of where it fits in our overall plan. Yeah.

D

Someone already made an internal spread for the environment stuff out of the blue, I. Think yeah.

A

So as ref limitations.

A

This is probably similar general nature of the work I.

A

Would say what I like research, some use cases bah blah blah I. Guess that's another thing that could be you.

A

Named existential types, what is this, this is being able to write type foo equals input bar or yeah. Okay,.

D

I'm I'm, writing and I mean out for that one. So is this literally just.

A

hmm

D

The syntax yes.

A

Okay, there is probably some other I think there's more work in this area than this context, yeah in particular, there's so there's like the syntax RFC, yes, but the current implementation, if I recall, has some deviations from sort of the RFC I feel like there's a it would be good to go over the semantics in detail of what we.

D

Expect.

A

There are.

D

Some recent changes the Oliver merged. Okay, they have addressed problems.

D

We should probably talk to into ten rounds and I feel, like I, think.

A

This might be a kind of work that is somehow is shared with like specialization to a certain extent of like specifying and ensuring that implementation kind of does what we want.

A

We'll see but.

A

Let's.

D

Go back to the next thing in the list, then, what once of course once we merged this impacts? Obviously we will also need to change the implementation, though, take some time not too much time. Yeah.

A

That's the easy part is really in short um right or it yeah, maybe depending I guess yes right.

A

Depends I guess on how well that, like how much that syntax allows things that the existing syntax doesn't, but.

D

So the exp I propose that we lift the restriction around where you can put it. So you like have a tuple of input and Buzz, that's kind of as referring to yeah. That should be mostly estates like recursive.

A

Disarray so there's the matter of using infiltrate in let bindings, which is like half implemented, but there's bring you to kind of redo. That I feel like this is mostly implementation. Work I think at this stage.

A

And so what's needed is to like drop implementation roadmap and.

D

So this is also for constant statics and.

D

Presumably, we should also make this work for the tight ascription. That type description is not stable, so.

A

Right, okay, so I, don't know to what extent I'm just going to call it infiltrating bindings to cover those more general cases. Yeah I would I.

D

Would yeah.

A

My sis, Chris or not or I, expected.

A

Stop.

D

So so I was skimming. The conversation you had with Alex and I was thinking that it would be good to not split people up into two different things like if alex is working on this. It should be finished so that we don't have a hundred different things that are like Simon finished as.

A

The goal of this mean is to identify in my mind anyway- or it's probably not gonna happen on this meeting, but my hope is yeah exactly that I totally agree, there's basically two try to group these things and then figure out one or two or three, though we're going to do the challenge might be that if we're like there, but it will come a time. Probably when there's like things that keep everybody busy requires some splitting and I don't know.

A

Maybe the answer is everyone will just not be busy and will find other things to do. I get kind of I think it's kind of gated by how much I want to call it leadership in with or something but I, don't know given by different kinds of being with sorry.

C

Turned into direct yeah I, just to clarify things on my side: I, probably I'll, probably finish off associated type bounds, which is central RSA, because that implementation is largely well. It's about. Two-Thirds, complete I also wanted to help get the existential lifetimes implementation. You know hidden in variant lifetimes and existential types over the line and then only after then would I probably consider working on the import, rain, banding stuff, so yeah just know my roadmap I'm not really planning to split time.

C

That's definitely saw the midterm, so don't run once I once I've completed this GPO.

D

And start working on the tests- oh okay, yeah- that would be nice yeah. Maybe when I'm done, you will feel differently about being to that stone. Yeah.

C

Possibly well, unless I magically didn't, you know, implemented everything every corner case correctly, which is probably not the case, but yeah. There's no cute rush for that, but anytime. The next often well, but in is like will say.

A

So see.

A

Anyway, you all see that notification that just popped up for me I'm, hoping not.

C

I.

A

Didn't say anything it wasn't, but I would if in case any future ones show up that I don't want to be seen. Okay, I, have it set up right, okay, existential life, time, simple trade, so right so, okay, I have these two things: I, don't really know quite categorize them, so the first one would be I. Think, let's start, let's go back one second trade object up casting, so my sense is this is something that.

A

It's kind of it's a kind of implementation task, but there's definitely some amount of design of like we have to propose a a V table layout and well maybe we do maybe we don't actually for trade object up casting, maybe not there's that really a VG.

D

Traits they love, the representation seems like I, think its traits.

A

Yes, I mean: how is it not sure some parts, obviously I mean wow they're? What other working group is it if it's not true, it's weird, though, about casting its there I'm confused as well like it feels like it might as well be I, don't know, doesn't yeah sure.

A

So I mean I know what you're saying it's a little different than like jock Loring's and so on. Yeah, that's okay, but I assume you familiar with those parts.

A

I think it I think the trade object up casting in particular can be grouped together with emporium bindings and existential lifetimes and infiltrate in that they they kind of fall. In the category of like it's not exactly clear what code we should write, but it's not like major language design that is needed. It's more like working through and figuring out, the code they're different in their difficulty level, but that's what we.

C

Re Niko have we decided what soul level design we need for our casting and multi tre objects-- like Annie, RFC, fallar, C or just experimentation, so I.

A

Don't know about that: I I'm, I'm, distinguishing the up casting from multitrader objects, stuff, yeah.

C

Sure I mean they kind of go hand in hand. I think you see, but up casting could definitely be done. First, I think are.

D

There any.

C

Questions.

D

I think.

A

We'd have to figure that out as we win like I I suspect. The answer is there are some, but not major ones, so you'd be more.

C

In favor of just going diving into that well having some discussions diving into implementation and experimenting, and only if serious ones come up, potentially go in the IRC with.

A

I mean the way I would see it is if we decide to do it. We're gonna pick a few of these things right and it's kind of in an early stage. I, don't think, there's anyone who would seriously proposed that they should not be up castable. So it's really a question of like how to do it and what the ramifications are and so I tend to agree.

A

Yes, so, though, the work would be like spelling that exploring that and then kind of writing up our conclusions and if that's kind of moving in terms of you think of it like the stages, we're sort of in the design stage and implementing at some point we yeah. If there's we could float, it might be that it's all very straightforward, say hey this. Is it or he might be, that we discovered oh there's a complicating factor? We should bring this to the Lange team and.

C

Having a meeting over that, like I, was suggesting just before someone dives into the implementation yeah.

A

Probably.

C

Say.

A

That's what I would think that the starting point for one of these would be an initial meeting to like brainstorm out the details and and so on and figure out from there. What what we think we do, that.

A

Okay associated tight bounds. This is the thing where you can sort of have an anonymous yeah anyway, the lights I'm gonna get back to very soon, hopefully so that where does that fall under I? Guess, that's implementation! Yep! Oh yeah, Darcy's, listen a little different than these other ones in that. Well, it's similar template Orion bindings, but I, there's kind of like it seems like there's a little less design. It's a little. More knows how well the RC is. Maybe not I. Think I was central.

C

To IRC yeah, obviously it is the on even writing test for that. It's reasonably clear what I do I need to do. The only thing we had was the discussion around defining uses, possibly existing in terms of associated type bindings.

C

You know whether we you know there's some few concerns expressed about that. You sort balloon into full-blown, you know, solver, hey or it would look cool. You would acquire some sort, full-blown solver to actually find defining uses in complex cases, but we think we can just do a simple case.

C

Yeah I think. Do you remember this discussion. I think Ollie was involved briefly and yeah.

B

Yeah.

C

So, okay.

C

That's like the only slight you know: language design I mean if you can call it. You know issue and we kind of came to a conclusion that we can just experiment on this. Although I haven't really started work on it, yeah I think I know what needs to be done. I have.

D

No idea what you're talking about with.

C

Us yeah sorry, it's probably easiest to see the I think my yeah I have a work in progress, PR, open and there's a bit of discussion towards the end. So have a look, and let me know if you have any questions: okay,.

A

Alright I think that yeah, that's okay, I, think also I put a few more things in here. I think they all are sort of falling in this category of, like we kind of know,.

C

What to do I.

A

Mean.

C

I think some of those are more distinctly midterm things than others and so much more short term, but I I agree they're, all roughly in the same category, I'm gonna go ahead and throw the.

A

Type alias bugs thing in that category, to like bounds not being respected. That's exactly what it is. Okay, it's not exactly clear what yeah it's all bugs, but yeah.

C

Sorry I saw I know about tray, aliases, open questions about trading. This is still I. Didn't I, wasn't aware there were any open questions around tray, aliases, central it associated trellises or anything like that, which I saw floated as an idea.

A

Well, Central has concerns I'm gonna. To be honest, I, don't exactly remember what they are, but I don't know that we want to go into them right now, but okay, but yet so for.

D

In the light zone, but what's that all about import rate tree aliases, oh yeah, no we're definitely not stabilized until we have associated traits.

A

Or at least until we've worked out with it enough to feel confident, I guess so: cats yeah okay, so this is good. We're getting close I think we can then refine these categories a little bit, but I put implied bounds under the specifying work because it's not exactly the same as named existential types, but it feels similar in that I feel like we kind of want to it's mostly about making sure the implementation in terms of what it depends on choc.

A

But it's relatively straightforward after that, but it's mostly about making sure that we know it's doing what we want it to be doing and we're happy with that. um Jen Eric, associated types, I think fall under this they're, mostly a matter of implementation, work specialization! That's the interesting case that kind of crosses a lot of boundaries. I guess I would put it under specifying work for the most part, though,.

A

And Schalk integration- that's a kind of category, that's all, but.

A

Face there's actually a couple variants of this tonight. They think are interesting right. So there's integrating.

C

Into.

A

Russy at least there's integrating into rust analyzer, which might be a different way to go about it, and then there's.

A

Maybe that's it. There might be some amount of clean-up on chocolate, stuff, I, don't know that counts. So, looking at these items, part of why I'm trying to especially the implementation ones might be something we want to reshuffle, but part of what I was trying to budget it like this is to sate it I. Imagine we might be wanting to do like these require different or human resources.

A

These different categories.

A

And I feel like we probably want not to the specifying work in particular I think it feels like we want people to be doing. Only one of those things at a time is my guest, so that we have enough, like time and energy, to sit and think about their implications. um This feels mildly, more paralyzed Abul. If we have enough people, um it's more a matter of hacking and then that sound plausible, maybe.

A

Maybe we can so within these I would say: there's like.

A

All the way stuff that can be done in rusty today relatively easily, which I would include I, believe that's true, forgets I believe. That's, probably true for trade object up casting infiltrate in bindings.

A

In contrast, I would say stuff like this is sort of semi blocked on lazy normalization we so RiRi bouncing coherence is probably fairly easy.

A

That's just this north there's. Actually two parts to this did.

D

You discuss the the default stuff, I'm zoomed out a bit.

A

Default associated type defaults, yeah, not yet. Okay, let's talk about him now, cuz there next time, I listed decide how they should actually I'm, not sure I categorize them correctly. What would you say? The work is neat. That's needed. Is there.

D

Well, I think you know and I think you know there.

D

So the open question is is when, when we check well for nests of defaults is in the traits definition or in the info as poor work, but I, don't know what how much depends on John and yeah.

A

So there really is like this was like the the sort of intersection in RFC right. We didn't try to like invent any new notion of default. We're just trying to apply the existing notion of default to Associated types. Is that right, so he beat that we had I'm saying this RC if I'm, just remembering now that this we had an RFC, it basically tried to apply the existing notion of defaults to Associated types, but not to invent. We had previously thought about. Oh, let's make some trees and specially like improved specialization.

A

That's all out of scope! That's a different thing right, except.

D

For trait objects, so the the thing it does with respect to shape objects is that you can assume the defaults in when you write time trait blah.

A

Okay,.

D

I'm not sure how much work that is.

A

Yeah that work seems pretty I, think that doesn't really require a chalk to do. I also don't know how much work it is, but I think it's kind of orthogonal.

A

Some.

D

Of it is already implemented in a buggy everybody, that's growing.

A

Right you.

D

Can maybe reuse them some of it mm-hmm I.

A

Mean I realized we don't have a listing here for a lazy normalization at all and I want to that's something I wouldn't wanted to, but failed to do like I started. I would like to get a better I. Think lazy. Normalization is itself too too broad of a category like there's. Some very specific I'm gonna make a heading here for now there's a very specific.

A

There's like a couple, maybe a there's, a couple of things we want from it right. We want some kind of constant Eric's interaction that doesn't work today and I. I need to get a good example of this. What I was trying to do? I think I found one but I want to verify it and then there's sort of improving the.

A

Bugs around and then by bugs I mean Isis and other bad behavior around higher ranked regions and normalization.

A

And just in general, reliability, I, don't know if there's other other classes of bugs I.

C

Think those are the two.

A

Major problems we have today that we look, we want normal normalization to solve and I thought it would be nice to dig into like the last time I did this I concluded that I really wanted the chalk style solver because of recursive challenges around recursive handling of traits, which are those elegantly, but I would like to reprove that to myself, especially to see if there's like some solutions that will address likes a constant Erichs without maybe not in a full way, but enough to unblock so that might I think there's some work here of just I'm gonna call it exploratory or like clarifying the problem of just being very clear about what we're playing is, are lazy norm.

A

Okay,.

A

When it comes to chalk integration, there's I don't handle this. There are some specific problems built in impose these sort of things and there's one. These are very specific to chalk handling of region constraints feels like an area that's worth pulling out.

A

And it's not really blocked on anything. It's more like could be done in chalk itself, but I would I.

A

Would guess I would put this in the category of somewhere between implementation and specifying I may come I move it up, because what you need to do here is sort of decide what our strategy is going to be make a good case for why it's a good choice. It's I.

A

Think it can be done.

A

Initially be done in chalk.

A

Okay,.

A

So, looking at these I.

D

Think we I think you didn't consider like HR TVs funds, generic closures, yeah.

A

You're right there on this list, um I would put those under blocked on chalk. Is that true, I.

D

Probably well implementation by wise, but we still needs to do the RFC and I think we can paralyze some of that work. Yeah.

A

That seems right, so let's move them up. I guess there are more in the Earth's.

A

Semantic work category like making our FCS right.

D

But probably more well, it's probably the thing that is closest to moving down down the list right.

A

So there's like we can kind of group these into like modest extensions and like bigger ideas, right right.

C

And.

A

I actually think I would put a seraph, maybe in between those two, but it it feels I'm, gonna grip it with modest extensions, because it's it's not like a deep.

D

Right so you need you need some attributes and ties to to say which, which things it applies to, and then you need to plug it into the right places somewhere in the compiler right.

A

With it, but it doesn't like change the expressiveness of the language in any particular way, unlike unlike these other two right and.

D

You just need to find the places to see right change.

A

These ones, okay, so I, think we should start with two or three.

D

Things with respect to a try to be Seabees. You can also skip on work up things in several stages, so I not sure. If that's a good idea.

A

Okay, like what do you mean by that.

D

So I think we want a syntax for quantifying on closures like for two gay and then pipes body of London, and you could do that just for four lifetimes to start with, and then you could add constraints on the life times and then you could introduce types and cosmetics say you can face it if you want to, but it might get weird in terms of motivating deep each little bit. Mm-Hmm.

A

Is.

D

That.

A

So some form of there's currently a the first thing. You said, which was some syntax for for explicit lifetimes right. That's more generic closures than nature on TV, right right, okay, okay, I, see.

A

Yeah I don't know that we need to break it to pieces, but I agree that at least that syntax seems separable, because it's like actually a problem today that might be worth splitting out and I.

A

Don't know if you saw, but in nll we encountered some problems here, too I sure I could Felix I find it somewhere if she likes and I we're going over, like in particular when you have partial but there's some sort of lack of clarity around what exactly type annotations on closure should mean, especially when they're only partially supplied and when it when it should be a higher-ranking versus not and so on, and so one of the I think I could imagine an RFC just talk just or like a branch of work.

A

Just digging into that would make sense as a first step right.

A

In fact, let's just go ahead and break it out: syntax, explicit syntax for closure type, annotations, oops and generic closures really means over pipes and.

D

Cones generics also, they okay over non regions.

D

Also,.

D

Something like.

D

Lifetime lifetime HR to be split bombs,.

A

Yeah I would say: let's close: let's go ahead and just call this richer universal.

A

What might be separable I guess? Maybe it's worth separating those things out in generic over types is pretty straightforward. It's really balanced. They could make it more interesting, but.

A

Okay, so I feel like we're at we're at it's one o'clock. We started a touch late, but that's okay, I'm wondering this actually pretty good work. I feel like that. We did here I'm wondering what the next steps are, and one thing I wanted to do as a start is I feel like this document is huge and I wanted to break these things out into mm-hmm sub documents.

D

We I don't want to keep saying you might have missed something, but I think we are pleased. The list is much more useful if it's complete, so the I see that Holley room worked about constant bands that seemed well it sort of comes to VG stuff, but it's also trade stuff. It's the interaction between coasts and trades, okay,.

A

Is this the thing that Barker also was writing about, or is it something else like being able to write declare that you take a constant bull or a nympho whose pens are constants? It's like kind of the problem in the taco, okay, yeah.

D

Basically, what we want to use traits the cost of funds yeah.

A

That's probably under the bigger ideas category, but it's a little more I feel like the scope like until now. Bigger ideas meant far in the future. This one doesn't sound far in the future necessarily, but it's still right.

A

It's got it's more worked out. So that's good.

D

It's more of an immediate problem.

A

Right speak also, a little less. It is sort of extending the language environmental ways, but somehow less so.

D

I'm not sure you know we are the Invictus system, I think polymorphism for real this time. Yeah.

A

Maybe not, it definitely falls in this category regardless so I guess the thing would be I would be curious. Each person who wants to might want to pick like what are two things to sort of nominate like I, feel like we want to pick in the end, some small set of these things to do first and some set to do later. But to start, maybe we can kind of nominate out good next steps, maybe not life, but maybe life.

A

Like I.

A

Feel like I would.

A

For example, I'd probably put lazy, Norman GATS, but I, don't know like things, I really think we should be doing net immediately. Next I think.

D

We should open that these are not meant to be an exclusive list, not.

A

Unless oh I.

D

Know I think it unlocks a bunch of different stuff right.

D

So that's useful I.

D

Think personally, after I'm done with the tests and the FCP I should get back to.

D

Hr TVs and generic lotions, since I, don't favor.

A

So actually, let's look: let's ask a slightly different question. Looking at each of these categories within there, maybe we I bet there's some agreement about what it's like most immediately actionable like an under exploratory semantic work.

A

I feel like HRT, B's and closures are pretty immediately actionable here and very high priority Constable's and bounds to, to a certain extent that that's also may be more of a cross collaboration thing. Yeah I feel like, for example, as well. Although I care a lot about it, I would be happy for it to wait for a little while it's waited. This long wait a little longer.

A

It was to be more like possible, so I think.

D

Some of the most important work on Asia are TVs and generic, so choices that are the motivation part. It's really easy to motivate. Janet Rogers everything else like HR TVs without Jerry closures, becomes more difficult.

D

So a use case is pretty good. So.

A

Under the specification yeah, that makes a lot of sense, I'm also like.

C

Super.

A

Excited about us emphasizing use cases. I was like.

D

But at the same time, I think that so generic closures is a major thing, but I still think that we should do the less important use like the parts of HR TVs. That requires some don't have so many use cases purely inclusive, like we want language not to be horribly, inconsistent.

A

Yeah I mean I would like to specify generic closures. I think also that it's fairly straight, like I'm gonna, say straightforward, but we have we're starting to have the vocabulary to talk about that. Thanks to chalk and everything, and it seems like we should be able to do it in a precise issue kind of way, and then we can phrase chair closures in terms of that vocabulary, and that's all like we sort of sort of confidence that we know what we're talking about. So.

A

In terms of specifying work, I highlighted specialization and named existential types um I, probably in that order, but I feel like it's really important for us to get a story around specialization.

A

It's been there a long time.

D

I'm not sure that specifying work is actually that specialization is actually specifying work feels exploratory in the sense that we need to go back and revisit the design itself. Yeah.

A

That's fair, I think I agree with you about that. I'm gonna, pull it up too I think it would fit. Nonetheless, under the modest extensions in the sense I guess it doesn't matter which two category to put it in, but so I think.

D

I think.

A

I see what you mean under I'm, putting it under bigger ideas, beside myself, I.

D

Think it fits in in the section on modest expansions and if you rename it to things.

A

We really need now: no, no, no all right, yeah I think it fit in the sense that.

D

So maybe you need you, maybe you need bigger ideas that we really need. No, no, no I'm putting it under bigger ideas, all right, yeah.

A

There's an orthogonal, that's the whole point of possible. Next steps is to encode the precedence which is orthogonal.

A

In terms of specifying work, then I mean maybe the answer is none but, like I, think implied about thought. I think it's made either so I think implied bounds is not it because I feel like it's not that we we have to make progress on chalk before it's even really that relevant. So it can wait.

A

It's an interesting thing to talk about, and maybe we want to, but I feel like the region. Constrained stuff is pretty important, and maybe that is exactly the kind of especially given the a kind of intersects and is related to some of the workaround universes and stuff on named existential types, also pretty important. So either of those seem possible to me, like the name next essential types. How important are they hmm I? Don't know how important their I was thinking that they intersect at a single weight which I guess they kind of do well,.

D

They're, nice of their own, the very nice fillet. Oh.

A

Yes,.

D

And well, there we've already worked a lunch on them, so we should finish.

A

Yeah all right, it's probably worth writing down some of our reasoning so use cases or.

A

Well, okay, so they're very useful, in particular, they're useful to address like a key shortcoming that we really like that they they give you a way to have named I've named. So these types address.

D

Send you to me- and you can also hide things in it- guys frankly not give out too much.

A

Hey I'm, somehow more I'm interested in that is a use case now. I'm trying to think I want to make sure we're justifying sort of not by how cool they are, but by how what key use cases are. The rest kind of neither of these quite is what I want I want like.

A

This is really needed to model blah blah blah in fuchsia or something, but that's, okay, I feel like there is probably answers like that: I just don't have I'm gonna tell my tip of my tongue. Well,.

D

I already yeah.

A

Yeah yeah, it's just us for some point donors kept doing. That's fine I got to run to in a second, but.

A

But we're so close to like reaching a stopping point so handling region constraints, I. Think a challenge for Nico is justify. Why I feel this is important. I I think it's important, but I want to think more about it and maybe it's more of a as part of chalk. Work, I, don't know so on the implementation side or they see an implementation work. Category I think unblocking lazy norm pretty clearly important yeah.

D

This.

A

Is let's see I had.

B

How.

A

Was I doing this I was writing a separate list of.

A

Possible next steps.

A

So clarifying the Lazy norm, problem I think generic associated types. These are the two that jump out at me as like unblocking stuff, oh and existential lifetimes in infiltrate. This is important for async/await economics, I mean, and also anyone using and infiltrator economics, but particularly.

D

Async/Await, this is the the issue that this is the ProQuest's, that tailor-made and then.

D

Who was it found us on this hope?.

A

Mathew Jasper I think Carla units as well yeah.

C

Yeah.

A

I mean right exactly that's the one I think, there's probably also some I'm kind of using this as a shorthand and I probably should dig into that. A little more of there are some lifetime related problems around async/await and I suspect there, there's like one or two or three and ice mmm I'm using this to some extent as a shorthand for all of them, which is sloppy because they might be two different piece of work that need to be done. I'm, not exactly sure. I will figure that up, but are they.

D

The sort of problems that we need to figure out before we ship like we don't want to find out after we shipped that oops there's.

A

Some debate about that I, don't think there are the sort of problems.

A

It's not that we're accepting code that we don't know. If we should accept it's more, that we are not accepting code. That is very common, but but we're you know we want to do it the right way, I'm a little and wonderfully, but are they like.

D

Unlivable paper cuts it.

A

Depends on who you ask I think there are a borderline, not livable. Yes, so example would be like. You can't have an async FN with two with two lifetimes in its signature, Wow, it's pretty pretty it's pretty extreme, oh yeah, and that so yeah anyway. I would put the rest of these things as lower priority. I think they might be worth taking, especially the implicating bindings.

A

Alex, reg and I had talked about spending some time making a road map, but not necessarily doing it. Just because we've kind of already had the thoughts it would be good to collect them in one place. So when we come back to it, we know what we're saying so.

D

Many of these things can be done in parallel, I, think and if we can try to sort of write up meandering instructions or is.

A

The question yeah I think they can but sorry to cut you off, but I totally agree I'm. Just a little wary of like we had to find the right set of mentors, because a lot of them are people things that I would have mentored and I. Don't feel capable of like mentally juggling. All of these things, but to the extent that, like other people, are doing that I'm all for it yeah.

A

So that's the question is what what amount of families can we find there is that kind.

A

All right cool! Well, let me go cuz. I got to eat lunch sometime and.

C

Thank you.

A

For for helping on the call, it was super helpful and we'll we'll talk, I'm gonna try to shop these around and also go into the the ones that are highlighted as possible. Next steps, especially on the implementation side, try to drill a little more into what that means, but John cool.

D

Cool.

A

Talk to you later did.

D

We did discuss no to trade objects. Oh no,.

A

We didn't, we should put that on the list. I think that falls under the some sort of probably modest extension. Exploratory work, the category, but.

D

That seems important, okay, something that people I.

A

Think yeah what we didn't do yet is we identified like possible next steps, but we didn't identify whatever the shortlist of like after that, what do we do and I think I tend to agree? The multitrader objects and trade object. Typecasting are light kind of on that list for me, because they're just annoying limitations with the language today, amongst long-standing annoying limitations. Well, there's so much in this list. That is, that yeah.

D

Yeah.

A

But.

D

But yeah I agree cuz.

A

Like stuff, you think should work but doesn't doesn't feel like a features. Not just a bug fix yeah.

D

If you're, if you're very used to Haskell, then then everything fix it feels like it like. Yes, that's, fair but yeah, but that seems more like try different layouts and see what has the best performance or something.

A

Yeah, it's the little different character than the other forms of design. Here, it's a little more lower level and so on, but I think there's enough. There's also some questions. That's actually to me the easy part yeah we got to find some be tables or whatever, but like uh I'm, not sure, but I feel confident. We if we start digging in I, mean and for that matter, just putting trade objects into chalk is already a sort of bit of work.

A

That needs to be done which is related to this and act and I think fairly high priority in this, as among the set of things to do in chocolate, is fairly high priorities to the extent that that's a goal.

A

That's another part of this that didn't I want to revisit. It's like how to think about the chocolate work on its own I kind of want to have some trajectories for were, like you know, reaching the point with the right pieces in place when we need them to be in the place.

A

Yeah, it may be handling trade objects in chalk like if I were doing bad work. I would want to be thinking. I had the multitrader objects already, so maybe that's handling the complex semantic questions. That's.

D

Just the Vita vases yeah, no, that makes sense. As for the V table, we could not specify the layout and just keep that stabilized, but not specified.

A

Yeah we may want to do that, leave it as implement regardless. We have to come up with the family, yeah yeah.

D

Of course, people, even if we do unspecified people will still assume, because transmute is yes immediately right. All.

A

Right talk to you later.
youtube image
From YouTube: Traits WG Roadmap Meeting (2019-02-25)

Description

A planning meeting where we map out and try to organize all the priorities, in an effort to map out next steps.