On 2012-06-25 20:35:21 -0400, as...@racket-lang.org wrote:
> | racket/generics: add contract combinator
> |
> | The generics library now generates a `name/c` macro
> | for a generic interface `name`. The combinator can be
> | used to contract instances (or constructors) of a
> | generic interface across standard contract boundaries.

To add a bit more context, the purpose of this feature is to allow
contracts to be applied to generic interfaces like how
`prop:dict/contract` does for dictionaries.

It's more flexible because it allows contracts to be added for any
interface (without any additional properties) and allows contracts
to be added at different places. e.g., you could export
`make-prime-dict` and `make-dict` constructors with different
contracts.

If nobody minds, I may go ahead and convert uses of `prop:dict/contract`
to use `dict/c` and export the latter from `racket/dict`.

Cheers,
Asumu
_________________________
  Racket Developers list:
  http://lists.racket-lang.org/dev

Reply via email to