<plietar>
For context, I'm an undergrad at Imperial. As a final year project I'm working with Sophia Drossopoulou on extending the model from "Deny Capabilities for Safe, Fast Actors" to describe generics
<plietar>
And show that they preserve soundness
<SeanTAllen>
Ah, Sylvan mentioned that to me the other day
<plietar>
So how would you make a `Map[Foo trn, U8]` for example ?
<plietar>
This doesn't work, but I don't see how it would break soundness
<plietar>
When the map needs to read from the Foo, it can alias it to a Foo box
plietar has quit [Remote host closed the connection]
plietar has joined #ponylang
plietar has quit [Ping timeout: 258 seconds]
<SeanTAllen>
you cant alias a trn or iso
<SeanTAllen>
they dont alias to themselves
<SeanTAllen>
that is the problem there
<SeanTAllen>
Map[Foo trn, U8], I'm not sure how based on the definition of `trn` you could create that
<SeanTAllen>
I'm also not sure why would want to make a `Map[Foo trn, U8]`
<SeanTAllen>
I'm assuming that the map comparison is a HashIs, so identity
<SeanTAllen>
So a trn cant be aliased which would mean, you can put it in but you can never get anything out
<SeanTAllen>
from an undergrad project i understand what you are asking but I'm having a hard time imaging how you could use iso, trn in that context (thus the #read)
prettyvanilla has quit [Remote host closed the connection]
prettyvanilla has joined #ponylang
_andre has quit [Quit: leaving]
aav_away has quit [Ping timeout: 240 seconds]
jemc has quit [Quit: WeeChat 1.4]
jemc has joined #ponylang
<cquinn>
what is the default capability of items in an array literal?
<cquinn>
I have a function that expects a `flags': Array[FlagSpec box] box`