kcsrk.info
# let f : 'a @ unique once -> 'a @ unique once = fun x -> x;;
val f : 'a @ once unique -> 'a @ once unique = <fun>
# let f : 'a @ unique once -> 'a @ unique once = fun x -> x;;
val f : 'a @ once unique -> 'a @ once unique = <fun>
I know that Daan Leijen and others worked on uniqueness and reuse, and have published a few papers on this.
I know that Daan Leijen and others worked on uniqueness and reuse, and have published a few papers on this.
```
let write r v =
{ contents = v }
```
Then, perhaps explain that the magic is safe since the protocol is encoded in the phantom type argument.
```
let write r v =
{ contents = v }
```
Then, perhaps explain that the magic is safe since the protocol is encoded in the phantom type argument.