That doesn't solve the issue. The issue is not in struct/c and thus
using struct/dc has the same problem. A immutable field cannot have a
impersonator contract applied to it because that would be equivalent
to mutating the field.

On Wed, Aug 7, 2013 at 8:49 AM, Asumu Takikawa <as...@ccs.neu.edu> wrote:
> On 2013-08-07 08:42:53 -0700, Eric Dobson wrote:
>> What is (posn X Y)? If you mean the obvious (struct/c posn X Y) you
>> will run into issues with the fact that posn is immutable and
>> therefore the contracts on its fields need to be flat or chaperone
>> contracts, and parametric contracts are not.
>
> How about something like:
>   (struct/dc posn [x () #:impersonator X]
>                   [y () #:impersonator Y])
>
> Cheers,
> Asumu
____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to