[racket-dev] swapping `unsafe-vector-ref' and `unsafe-vector*-ref'

From: Eli Barzilay (eli at barzilay.org)
Date: Mon Oct 25 17:38:16 EDT 2010

Four hours ago, Matthew Flatt wrote:
> I've pushed a change (intended to be merged to 5.0.2) that
> swaps 
>  `unsafe-vector-ref'    <-> `unsafe-vector*-ref'
>  `unsafe-vector-set!'   <-> `unsafe-vector*-set'
>  `unsafe-vector-length' <-> `unsafe-vector*-length'
>  `unsafe-unbox'         <-> `unsafe-unbox*'
>  `unsafe-set-box!'      <-> `unsafe-set-box*!'
>  `unsafe-struct-ref'    <-> `unsafe-struct*-ref'
>  `unsafe-struct-set!'   <-> `unsafe-struct*-set'
> I tried to change all uses in the repository, but the patch needs lots
> of eyes and testing.
> Otherwise, all existing uses of the starred operation are now broken,
> and they need to be changed to unstarred operations.

I've started a new release build with the change.  (Doesn't it require
a new version too?)

When it's done, it's probably a good idea for people who use contracts
heavily to re-test.

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the dev mailing list.