Re: [racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread 'John Clements' via Racket Users
Many thanks. > On Jan 23, 2018, at 1:56 PM, Matthew Flatt wrote: > > Sure, with whatever improvements you'd like to make. > > At 23 Jan 2018 16:53:15 -0500, "John Clements" wrote: >> Permission to paste this summary on Stack Exchange? >> >> >>> On Jan 23, 2018, at 1:20

Re: [racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread 'John Clements' via Racket Users
> On Jan 23, 2018, at 1:03 PM, Matthias Felleisen > wrote: > > > Huh? Serves you right for using the top level. It works fine if you place it > in the definitions window :-) Of course, and that’s what I told the poster on Stack Exchange. I was befuddled by the

Re: [racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread 'John Clements' via Racket Users
Permission to paste this summary on Stack Exchange? > On Jan 23, 2018, at 1:20 PM, Matthew Flatt wrote: > > At 23 Jan 2018 15:57:34 -0500, "'John Clements' via Racket Users" wrote: >> despite being inside of a binding of the name map > > That's the essence of the problem.

Re: [racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread Matthew Flatt
At 23 Jan 2018 15:57:34 -0500, "'John Clements' via Racket Users" wrote: > despite being inside of a binding of the name map That's the essence of the problem. Which things are in the scope of a top-level definition? For example, is the reference to `f` in the scope of a binding of `f` in

Re: [racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread Matthias Felleisen
Huh? Serves you right for using the top level. It works fine if you place it in the definitions window :-) > Welcome to DrRacket, version 6.11.0.4--2017-12-18(-/f) [3m]. > Language: racket, with debugging; memory limit: 256 MB. > > (map '() add1) > '() > > (map '(1) add1) > '(2) > > (map '(1

[racket-users] SIMPLE top-level binding semantics question

2018-01-23 Thread 'John Clements' via Racket Users
Stack overflow today led me to something … very strange. I feel like I must be missing something crushingly obvious. To reproduce: start racket at the command line or hit “run” on a definitions window containing only “#lang racket”. Then, paste: (define map (lambda (l f) (cond