[racket-users] Call for Participation: ICFP 2016

2016-07-18 Thread 'Lindsey Kuper' via users-redirect
[ Early registration ends 17 August. ] = Call for Participation ICFP 2016 21st ACM SIGPLAN International Conference on Functional Programming and affiliated events September 18 - September 24, 2016 Nara, Japan

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Matthew Flatt
That sounds like a promising direction. A declaration that means specifically "more powerful inspector" isn't quite right, because there's usually not a more powerful inspector available (which is why you can use `ffi/unsafe` in a program run by DrRacket). Probably you want to say "at least as

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Sam Tobin-Hochstadt
What about a `#%declare` form that prevented access to the underlying namespace, except with a more-powerful inspector (such as the one DrRacket has to set up the REPL)? Sam On Mon, Jul 18, 2016 at 10:58 PM, Matthew Flatt wrote: > Ah, ok. An inspector prevents a sandbox from

Re: [racket-users] identifier-out-of-context when trying to make a debug-repl

2016-07-18 Thread Matthew Flatt
At Thu, 14 Jul 2016 19:07:50 -0400, Alex Knauth wrote: > > > On Jul 14, 2016, at 5:11 PM, Matthew Flatt wrote: > > > > At Thu, 14 Jul 2016 16:01:52 -0400, Alex Knauth wrote: > >> Ok, by using `syntax-debug-info` I was able to get somewhere. However, I > want > >> to make

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Matthew Flatt
Ah, ok. An inspector prevents a sandbox from getting the namespace of a TR module that was created outside the sandbox (in the same way that it prevents access to `ffi/unsafe` as defined outside the sandbox), but it doesn't prevent access to the namespace of a module defined inside the sandbox. I

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Leif Andersen
Oh? Then should we disable it by default in Racket Sandboxes? (Since this could be used on say, pasterack:) http://pasterack.org/pastes/16888 ~Leif Andersen On Mon, Jul 18, 2016 at 4:34 PM, Matthew Flatt wrote: > FWIW, `module->namespace` is privileged and guarded by an

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Matthew Flatt
FWIW, `module->namespace` is privileged and guarded by an inspector in the same way as `(require ffi/unsafe)`. At Mon, 18 Jul 2016 16:20:18 -0400, Sam Tobin-Hochstadt wrote: > This is the same as this bug: > http://bugs.racket-lang.org/query/?cmd=view%20audit-trail=default=1 > 4773 > > I think

Re: [racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Sam Tobin-Hochstadt
This is the same as this bug: http://bugs.racket-lang.org/query/?cmd=view%20audit-trail=default=14773 I think that `eval` should automatically wrap things in the `#%top-interaction` of the relevant namespace, which would help in some cases, but in general, yes, the top-level is hopeless. Sam On

[racket-users] Typed Racket is Unsound because of module->namespace

2016-07-18 Thread Leif Andersen
#lang racket (require syntax/location) (module foo typed/racket (: f (-> Byte Integer)) (define (f x) (+ x 1)) (set! f (λ ([x : Byte]) (+ x 2))) (f 3)) (require 'foo) ((eval 'f (module->namespace (quote-module-path foo))) "world") You're welcome. (Also came up with

[racket-users] sequence-append*

2016-07-18 Thread Ben Greenman
Hi, does anyone have an efficient `sequence-append*` function that takes a sequence of sequences and returns the sequence that has all elements from each, in order? Here is my version. It works, but I'm wondering if there's a better way. (require racket/generator) ;; (Sequenceof (Sequenceof A))