[racket-dev] Strange issue with identifier-binding being wrong for lexical variables

2014-10-21 Thread Sam Tobin-Hochstadt
I've found what I think is a bug in the expander where lexical
references can get an `identifier-binding` result that suggests that
they're module-bound.

In particular, you need these three files:

bugtest.rkt:

(module bugtest "wraptest.rkt")

bugtest.scm:

(define (gcbench)
  (define main #f)
  main)

(define main #f)

wraptest.rkt:

#lang racket/base
(provide (rename-out (module-begin #%module-begin)))

(require racket/include
 (for-syntax racket/base))

(define-syntax (module-begin stx)
  (define name (syntax-property stx 'enclosing-module-name))
  #`(#%module-begin
 (include #,(format "~a.scm" name

Then run the macro stepper with macro hiding off on "bugtest.rkt".
Click on the reference to `main` inside `gcbench`. You'll see that it
says that it's a module-bound variable named `main.2` which is defined
in this module.

Then try changing the name of the top-level definition in bugtest.scm
to `main2`. Re-run the macro stepper, and you'll see that the
identifier-binding is now lexical.

I tried a few things to get this to go away (such as using
`#%plain-module-begin`) which didn't work. Reducing it to two files,
ie doing the include directly in bugtest.rkt, made the problem
disappear.

Changing the body of the `module-begin` macro to:

(define-syntax (module-begin stx)
  (define name (syntax-property stx 'enclosing-module-name))
  #`(#%module-begin
 #,(datum->syntax stx `(include ,(format "~a.scm" name)))
 #,(datum->syntax stx '(main

and then providing a bunch of extra stuff made the issue go away.
Because there's the workaround, the issue isn't urgent.

Sam (and Tobias, who found this bug)
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


[racket-dev] define-require-syntax issue

2014-10-21 Thread Dan Liebgold
If I do a (require (file )) in a module, the provided
stuff gets imported properly.

If I do a special require form that uses define-require-syntax to generate
an identical (file <...>) the specified module gets evaluated -- but
(seemingly) nothing gets imported.

Is there something special the define-require-syntax transformer needs to
do besides generate a syntax object?

samth mentioned on irc that it is probably a hygiene issue... something
about generating the right marks on the (file ...) form.

-- 
Dan Liebgold[dan.liebg...@gmail.com]
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-21 Thread John Clements
On Thu, Oct 16, 2014 at 6:13 AM, Ryan Culpepper  wrote:

> Checklist items for the v6.1.1 release
>   (using the v6.1.0.900 release candidate build)
>
> * John Clements 
>   - Stepper Tests
>

done.


>   Updates:
>   - Stepper Updates: update HISTORY
>   (updates should show v6.1.1 as the most current version; email me
>   to pick the changes when they're done, or tell me if there are no such
>   changes.)
>

done.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-21 Thread Stephen Chang
> * Stephen Chang 
>   - Lazy Racket Tests
>   - Lazy stepper tests

All pass.


>
> * Eli Barzilay 
>   - Swindle Tests
>   - XREPL Tests
>   - Verify PL language
>   - Racket Tree: compare new distribution tree to previous one
>   - Run the unix installer tests
>   - Run zsh completions tests
> (". .../racket-completion.zsh; _racket --self-test")
>
> * Stephen Bloch 
>   - Picturing Programs Tests
>
> * Greg Cooper 
>   - FrTime Tests
>
> * Jon Rafkind 
>   Release tests for (one of the) linux releases:
>   - Test that the `racket' and `racket-textual' source releases
> compile fine (note that they're still called `plt' and `mz' at
> this stage).
>   - Test that the binary installers for both work, try each one in
> both normal and unix-style installation modes. (just ubuntu)
>   [Note: get the release candidates from the URL in this email. Use
>the 'static table' link to see a list of all tar files available]
>
> * Mike Sperber 
>   - DMdA Tests
>   - Stepper Tests
>   - Signature Tests
>
> * David Van Horn 
>   - EoPL Tests
>
> * Neil Toronto 
>   - Plot Tests
>   - Images Tests
>   - Inspect icons
>   - Math tests
>
> * Doug Williams 
>   - Additional Plot Tests
>
> * Shriram Krishnamurthi 
>   Tour: check the tour and generate a new one if needed.
>   [Note: Since this is a v6.1.0.900 build, you will need to edit your
> .../collects/framework/private/version.rkt
>   file and change `(version)' to `"6.1.1"'.]
_
  Racket Developers list:
  http://lists.racket-lang.org/dev