[racket-dev] [plt] Push #21156: master branch updated
Can we please not have this?? The whole point of having uniform names
is that you can use require/provide things easily so there's no need
for a library.
In addition, the usual way things went so far was to write safe code,
and then "turn on" unsafely by adding requires with dropping the
prefix, or do it locally by adding `unsafe-'. Now the development
line would be to start safely, then add unsafe, then to debug you add
this other unsafe thing which is really not unsafe.
7 minutes ago, clements at racket-lang.org wrote:
> collects/racket/unsafe/safe-ops.rkt
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> --- /dev/null
> +++ NEW/collects/racket/unsafe/safe-ops.rkt
> @@ -0,0 +1,25 @@
> +#lang racket
> +
> +(require racket/fixnum
> + racket/flonum)
> +
> +
> +;; the point of this file is to provide functions that are labeled
> +;; as unsafe but are actually safe. This provides an easy means to
> +;; disable unsafety; a require of racket/unsafe/ops can be replaced
> +;; with a require of racket/unsafe/safe-ops.
> +
> +;; this list is almost certainly incomplete; I feel partially justified
> +;; in adding it to the tree anyhow because
> +;; a) it's easy to extend, and
> +;; b) it appears to me (based on the require of #%unsafe in the corresponding
> +;; 'ops' library) that determining the full set of functions will require
> +;; mucking around in the C source, and not being very confident about
> +;; my conclusions.
> +
> +
> +(provide (prefix-out unsafe- (all-from-out racket/fixnum))
> + (prefix-out unsafe- (all-from-out racket/flonum))
> + (prefix-out unsafe- (combine-out vector-length
> + vector-ref
> + vector-set!)))
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!