[ANN] New package: live-free-or-die
Jay McCarthy <[email protected]>
| Newsgroups | gmane.comp.lang.racket.user,gmane.lisp.scheme.plt |
|---|---|
| Message-ID | <CAJYbDamQiurFt1_R87RR_E37GqDtoaZSGk__W+Bm=7gPtQ5-uQ@mail.gmail.com> |
I've just put a new package on the server: live-free-or-die
This package lets you escape from Typed Racket's contracts.
--
Here's a little example:
Suppose that "server.rkt" is:
```
#lang typed/racket
(: f ((Listof Float) -> Float))
(define (f l)
(cond
[(empty? l)
0.0]
[else
(+ (first l)
(f (rest l)))]))
(provide f)
```
And that "client.rkt" is:
```
#lang racket/base
(require live-free-or-die)
(live-free-or-die!)
(require "server.rkt")
(f (vector 1 2 3))
```
Then this is what you get when you run the program:
$ racket "client.rkt"
zsh: segmentation fault racket "client.rkt"
For your convenience, `live-free-or-die!` is also aliased to
`Doctor-Tobin-Hochstadt:Tear-down-this-wall!`
--
Enjoy!
--
Jay McCarthy
Associate Professor
PLT @ CS @ UMass Lowell
http://jeapostrophe.github.io
"Wherefore, be not weary in well-doing,
for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
- D&C 64:33
--
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+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected]
For more options, visit https://groups.google.com/d/optout.