Re: [racket-users] Simple define-require-syntax question

2017-06-24 Thread Matthias Felleisen
> On Jun 18, 2017, at 8:09 AM, Matthew Flatt wrote: > > At Sun, 18 Jun 2017 06:47:24 -0400, Tony Garnock-Jones wrote: >> First, it seems like since the whole point of require is to pollute the >> surrounding namespace, an "unhygienic" require would be better. > > Generally,

Re: [racket-users] Simple define-require-syntax question

2017-06-18 Thread Matthew Flatt
At Sun, 18 Jun 2017 06:47:24 -0400, Tony Garnock-Jones wrote: > First, it seems like since the whole point of require is to pollute the > surrounding namespace, an "unhygienic" require would be better. Generally, I don't see the difference between `require` and `define` in terms of the intent to

Re: [racket-users] Simple define-require-syntax question

2017-06-18 Thread Tony Garnock-Jones
On 06/17/2017 08:02 PM, Matthew Flatt wrote: > As a `require` form, a `submod`'s binding context is taken from the > parenthesis around the `submod`. With options (A) and (B), the context > of those parentheses is macro-introduced. Thanks! So this `submod` binding context is being used to mark

Re: [racket-users] Simple define-require-syntax question

2017-06-17 Thread Matthew Flatt
As a `require` form, a `submod`'s binding context is taken from the parenthesis around the `submod`. With options (A) and (B), the context of those parentheses is macro-introduced. At Sat, 17 Jun 2017 16:49:50 -0400, Tony Garnock-Jones wrote: > #lang racket > ;; > ;; Hi all (Matthew in particular

[racket-users] Simple define-require-syntax question

2017-06-17 Thread Tony Garnock-Jones
#lang racket ;; ;; Hi all (Matthew in particular I imagine :-) ), ;; ;; Why does option (C) work, but options (A) and (B) do not? ;; ;; They fail with: ;; ;; t.rkt:31:2: v1: unbound identifier in module ;; in: v1 ;; context...: ;;standard-module-name-resolver ;; ;; -- Tony (require