Hello, the documentation at https://docs.racket-lang.org/reference/fixnums.html is misleading at best. If you - as I did - use the suggested approach of requiring optimized (and unsafe) fx... operations from racket/unsafe/ops with:
(require (filtered-in (λ (name) (regexp-replace #rx"unsafe-" name "")) racket/unsafe/ops)) You end up using _all_ symbols from racket/unsafe/ops. All of them are - of course - uncontracted. Which means that if you issue for example vector-ref on something that is not a vector, it can crash the runtime without any apparent reason - instead of just throwing an exception as one would expect. A simple documentation fix should probably go along the lines: (require racket/require (filtered-in (λ (name) (and (regexp-match #rx"^unsafe-fx" name) (regexp-replace #rx"unsafe-" name ""))) racket/unsafe/ops)) Or is it just me running into corner cases with optimized Racket code? Cheers, Dominik -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/1262b01a-5e9c-180e-d02a-b2e331c1f3cc%40trustica.cz.