Re: [racket-dev] Release for v5.3 has begun

2012-07-18 Thread Matthias Felleisen

For various reasons, the release is running late. 

The release committee -- Robby, Jay, Ryan and I -- have 
therefore decided to accelerate the release schedule a bit: 

   -- 17th create release branch (lasts until tomorrow 10am)
   -- 23rd begin testing
   -- 24th call for release announcement
   -- August 1 release

Notice the stringently shortened bug fix and test cycle. 

If you have any problems with this shortened cycle, please speak up now. 

-- Matthias





On Jul 17, 2012, at 7:28 PM, Ryan Culpepper wrote:

> The release process for v5.3 has begun: the `release' branch was
> created for any work that is left and is now bumped to v5.2.900.0.  You
> can go on using the `master' branch as usual, it is now bumped to
> v5.3.0.16 (to avoid having two different trees with the same version).
> 
> If you have any bug-fixes and changes that need to go in the release
> then make sure to specify that in the commit message or mail me the
> commit SHA1s.  You can `git checkout release' to try it out directly if
> needed -- but do not try to push commits on it (the server will forbid
> it).
> 
> Please make sure that code that you're responsible for is as stable
> as possible, and let me know if there is any new work that should
> not be included in this release.
> 
>  >> NOW IS THE TIME TO FIX BUGS THAT YOU KNOW ABOUT <<<
> 
> The time between the `release' branch creation and the actual
> release is for fixing new errors that prevent proper functioning of
> major components and that show up during the preparation for a
> release.  You can also finalize piece of work that is not yet
> complete, but please avoid merging new features.
> 
> Note that nightly builds will go on as usual (as v5.3.0.16), and
> pre-release builds will be available shortly at
> 
>  http://pre.racket-lang.org/release/
> 
> Please tell me if you think that this release is significant enough
> that it should be announced on the users list for wider testing.
> _
> Racket Developers list:
> http://lists.racket-lang.org/dev

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


Re: [racket-dev] [plt] Push #25007: master branch updated

2012-07-18 Thread Sam Tobin-Hochstadt
On Tue, Jul 17, 2012 at 5:59 PM, Ryan Culpepper  wrote:
> On 07/17/2012 05:32 PM, mfl...@racket-lang.org wrote:
>>
>> mflatt has updated `master' from 3b5eb1da41 to 6b3e207ecd.
>>http://git.racket-lang.org/plt/3b5eb1da41..6b3e207ecd
>>
>> =[ 2 Commits ]==
>> Directory summary:
>> 5.7% collects/drracket/private/
>>94.2% collects/racket/match/
>>
>> ~~
>>
>> 949d12e Matthew Flatt  2012-07-17 13:45
>> :
>> | revert use of `lazy-require' in `racket/match' implementation
>> |
>> | Using `lazy-require' under `begin-for-syntax' expands to a use of
>> | `define-runtime-path' under `begin'for-syntax'. Unfortunately,
>> | `define-runtime-path' doesn't yet work with `raco exe' when it
>> | appears under `begin-for-syntax'. Although `define-runtime-path'
>> | should be fixed, it may take a while. Meanwhile, reverting the
>> | change allows programs that require `racket/gui/base' to work
>> | with `raco exe'.
>> |
>> | There's another `lazy-require' under `begin-for-syntax' that
>> | doesn't seem to cause the same trouble, though.
>> :
>>M collects/racket/match/define-forms.rkt | 7 ++-
>
>
> A workaround for this issue (if Sam wants to try it again) is to just insert
> a define-runtime-module-path-index form at phase 0 by hand. See
> /collects/syntax/parse/private/sc.rkt near the top for an example.

I now have a local build with this technique -- how should I test that
I haven't broken `raco exe` for gui programs?

Also, could `lazy-require` use `syntax-local-lift-end-declaration` to
insert this automatically when used at a phase>0?
-- 
sam th
sa...@ccs.neu.edu
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] [plt] Push #25007: master branch updated

2012-07-18 Thread Robby Findler
In addition to making a GUI program, eg:

#lang racket/gui
(send (new frame% [label ""][width 100]) show #t)

Into an executable and using raco exe to create an executable, you
could also test doing that inside DrRacket (the Create Executable menu
item when you are in the module language has several options to try).

Also, run plt/collects/tests/drracket/teaching-lang-executable-creation.rkt.

Robby

On Wed, Jul 18, 2012 at 8:25 AM, Sam Tobin-Hochstadt  wrote:
> On Tue, Jul 17, 2012 at 5:59 PM, Ryan Culpepper  wrote:
>> On 07/17/2012 05:32 PM, mfl...@racket-lang.org wrote:
>>>
>>> mflatt has updated `master' from 3b5eb1da41 to 6b3e207ecd.
>>>http://git.racket-lang.org/plt/3b5eb1da41..6b3e207ecd
>>>
>>> =[ 2 Commits ]==
>>> Directory summary:
>>> 5.7% collects/drracket/private/
>>>94.2% collects/racket/match/
>>>
>>> ~~
>>>
>>> 949d12e Matthew Flatt  2012-07-17 13:45
>>> :
>>> | revert use of `lazy-require' in `racket/match' implementation
>>> |
>>> | Using `lazy-require' under `begin-for-syntax' expands to a use of
>>> | `define-runtime-path' under `begin'for-syntax'. Unfortunately,
>>> | `define-runtime-path' doesn't yet work with `raco exe' when it
>>> | appears under `begin-for-syntax'. Although `define-runtime-path'
>>> | should be fixed, it may take a while. Meanwhile, reverting the
>>> | change allows programs that require `racket/gui/base' to work
>>> | with `raco exe'.
>>> |
>>> | There's another `lazy-require' under `begin-for-syntax' that
>>> | doesn't seem to cause the same trouble, though.
>>> :
>>>M collects/racket/match/define-forms.rkt | 7 ++-
>>
>>
>> A workaround for this issue (if Sam wants to try it again) is to just insert
>> a define-runtime-module-path-index form at phase 0 by hand. See
>> /collects/syntax/parse/private/sc.rkt near the top for an example.
>
> I now have a local build with this technique -- how should I test that
> I haven't broken `raco exe` for gui programs?
>
> Also, could `lazy-require` use `syntax-local-lift-end-declaration` to
> insert this automatically when used at a phase>0?
> --
> sam th
> sa...@ccs.neu.edu
> _
>   Racket Developers list:
>   http://lists.racket-lang.org/dev
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] [plt] Push #25007: master branch updated

2012-07-18 Thread Sam Tobin-Hochstadt
On Wed, Jul 18, 2012 at 9:28 AM, Robby Findler
 wrote:
> In addition to making a GUI program, eg:
>
> #lang racket/gui
> (send (new frame% [label ""][width 100]) show #t)
>
> Into an executable and using raco exe to create an executable,

This worked correctly, with just 'raco exe guibase.rkt'.

> you
> could also test doing that inside DrRacket (the Create Executable menu
> item when you are in the module language has several options to try).

This mostly didn't work -- only the "Launcher" choice produced working
results.  The others gave this error:

standard-module-name-resolver: collection not found
  collection: "racket/match"
  in collection directories:
   /collects

Matthew (or others): is this the same error you got before?

> Also, run plt/collects/tests/drracket/teaching-lang-executable-creation.rkt.

This worked.

So now I'm somewhat confused at to whether things are working.

Sam

>
> Robby
>
> On Wed, Jul 18, 2012 at 8:25 AM, Sam Tobin-Hochstadt  
> wrote:
>> On Tue, Jul 17, 2012 at 5:59 PM, Ryan Culpepper  wrote:
>>> On 07/17/2012 05:32 PM, mfl...@racket-lang.org wrote:

 mflatt has updated `master' from 3b5eb1da41 to 6b3e207ecd.
http://git.racket-lang.org/plt/3b5eb1da41..6b3e207ecd

 =[ 2 Commits ]==
 Directory summary:
 5.7% collects/drracket/private/
94.2% collects/racket/match/

 ~~

 949d12e Matthew Flatt  2012-07-17 13:45
 :
 | revert use of `lazy-require' in `racket/match' implementation
 |
 | Using `lazy-require' under `begin-for-syntax' expands to a use of
 | `define-runtime-path' under `begin'for-syntax'. Unfortunately,
 | `define-runtime-path' doesn't yet work with `raco exe' when it
 | appears under `begin-for-syntax'. Although `define-runtime-path'
 | should be fixed, it may take a while. Meanwhile, reverting the
 | change allows programs that require `racket/gui/base' to work
 | with `raco exe'.
 |
 | There's another `lazy-require' under `begin-for-syntax' that
 | doesn't seem to cause the same trouble, though.
 :
M collects/racket/match/define-forms.rkt | 7 ++-
>>>
>>>
>>> A workaround for this issue (if Sam wants to try it again) is to just insert
>>> a define-runtime-module-path-index form at phase 0 by hand. See
>>> /collects/syntax/parse/private/sc.rkt near the top for an example.
>>
>> I now have a local build with this technique -- how should I test that
>> I haven't broken `raco exe` for gui programs?
>>
>> Also, could `lazy-require` use `syntax-local-lift-end-declaration` to
>> insert this automatically when used at a phase>0?
>> --
>> sam th
>> sa...@ccs.neu.edu
>> _
>>   Racket Developers list:
>>   http://lists.racket-lang.org/dev



-- 
sam th
sa...@ccs.neu.edu
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] [plt] Push #25007: master branch updated

2012-07-18 Thread Robby Findler
Sounds like they aren't. But it isn't clear when the bug was introduced.

Robby

On Wed, Jul 18, 2012 at 8:47 AM, Sam Tobin-Hochstadt  wrote:
> On Wed, Jul 18, 2012 at 9:28 AM, Robby Findler
>  wrote:
>> In addition to making a GUI program, eg:
>>
>> #lang racket/gui
>> (send (new frame% [label ""][width 100]) show #t)
>>
>> Into an executable and using raco exe to create an executable,
>
> This worked correctly, with just 'raco exe guibase.rkt'.
>
>> you
>> could also test doing that inside DrRacket (the Create Executable menu
>> item when you are in the module language has several options to try).
>
> This mostly didn't work -- only the "Launcher" choice produced working
> results.  The others gave this error:
>
> standard-module-name-resolver: collection not found
>   collection: "racket/match"
>   in collection directories:
>/collects
>
> Matthew (or others): is this the same error you got before?
>
>> Also, run plt/collects/tests/drracket/teaching-lang-executable-creation.rkt.
>
> This worked.
>
> So now I'm somewhat confused at to whether things are working.
>
> Sam
>
>>
>> Robby
>>
>> On Wed, Jul 18, 2012 at 8:25 AM, Sam Tobin-Hochstadt  
>> wrote:
>>> On Tue, Jul 17, 2012 at 5:59 PM, Ryan Culpepper  wrote:
 On 07/17/2012 05:32 PM, mfl...@racket-lang.org wrote:
>
> mflatt has updated `master' from 3b5eb1da41 to 6b3e207ecd.
>http://git.racket-lang.org/plt/3b5eb1da41..6b3e207ecd
>
> =[ 2 Commits ]==
> Directory summary:
> 5.7% collects/drracket/private/
>94.2% collects/racket/match/
>
> ~~
>
> 949d12e Matthew Flatt  2012-07-17 13:45
> :
> | revert use of `lazy-require' in `racket/match' implementation
> |
> | Using `lazy-require' under `begin-for-syntax' expands to a use of
> | `define-runtime-path' under `begin'for-syntax'. Unfortunately,
> | `define-runtime-path' doesn't yet work with `raco exe' when it
> | appears under `begin-for-syntax'. Although `define-runtime-path'
> | should be fixed, it may take a while. Meanwhile, reverting the
> | change allows programs that require `racket/gui/base' to work
> | with `raco exe'.
> |
> | There's another `lazy-require' under `begin-for-syntax' that
> | doesn't seem to cause the same trouble, though.
> :
>M collects/racket/match/define-forms.rkt | 7 ++-


 A workaround for this issue (if Sam wants to try it again) is to just 
 insert
 a define-runtime-module-path-index form at phase 0 by hand. See
 /collects/syntax/parse/private/sc.rkt near the top for an example.
>>>
>>> I now have a local build with this technique -- how should I test that
>>> I haven't broken `raco exe` for gui programs?
>>>
>>> Also, could `lazy-require` use `syntax-local-lift-end-declaration` to
>>> insert this automatically when used at a phase>0?
>>> --
>>> sam th
>>> sa...@ccs.neu.edu
>>> _
>>>   Racket Developers list:
>>>   http://lists.racket-lang.org/dev
>
>
>
> --
> sam th
> sa...@ccs.neu.edu
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] [plt] Push #25007: master branch updated

2012-07-18 Thread Sam Tobin-Hochstadt
On Wed, Jul 18, 2012 at 10:03 AM, Robby Findler
 wrote:
> Sounds like they aren't. But it isn't clear when the bug was introduced.

Does this mean that `syntax-parse` (which uses the same thing I'm
trying) is currently broken wrt executable creation?

>
> Robby
>
> On Wed, Jul 18, 2012 at 8:47 AM, Sam Tobin-Hochstadt  
> wrote:
>> On Wed, Jul 18, 2012 at 9:28 AM, Robby Findler
>>  wrote:
>>> In addition to making a GUI program, eg:
>>>
>>> #lang racket/gui
>>> (send (new frame% [label ""][width 100]) show #t)
>>>
>>> Into an executable and using raco exe to create an executable,
>>
>> This worked correctly, with just 'raco exe guibase.rkt'.
>>
>>> you
>>> could also test doing that inside DrRacket (the Create Executable menu
>>> item when you are in the module language has several options to try).
>>
>> This mostly didn't work -- only the "Launcher" choice produced working
>> results.  The others gave this error:
>>
>> standard-module-name-resolver: collection not found
>>   collection: "racket/match"
>>   in collection directories:
>>/collects
>>
>> Matthew (or others): is this the same error you got before?
>>
>>> Also, run plt/collects/tests/drracket/teaching-lang-executable-creation.rkt.
>>
>> This worked.
>>
>> So now I'm somewhat confused at to whether things are working.
>>
>> Sam
>>
>>>
>>> Robby
>>>
>>> On Wed, Jul 18, 2012 at 8:25 AM, Sam Tobin-Hochstadt  
>>> wrote:
 On Tue, Jul 17, 2012 at 5:59 PM, Ryan Culpepper  wrote:
> On 07/17/2012 05:32 PM, mfl...@racket-lang.org wrote:
>>
>> mflatt has updated `master' from 3b5eb1da41 to 6b3e207ecd.
>>http://git.racket-lang.org/plt/3b5eb1da41..6b3e207ecd
>>
>> =[ 2 Commits ]==
>> Directory summary:
>> 5.7% collects/drracket/private/
>>94.2% collects/racket/match/
>>
>> ~~
>>
>> 949d12e Matthew Flatt  2012-07-17 13:45
>> :
>> | revert use of `lazy-require' in `racket/match' implementation
>> |
>> | Using `lazy-require' under `begin-for-syntax' expands to a use of
>> | `define-runtime-path' under `begin'for-syntax'. Unfortunately,
>> | `define-runtime-path' doesn't yet work with `raco exe' when it
>> | appears under `begin-for-syntax'. Although `define-runtime-path'
>> | should be fixed, it may take a while. Meanwhile, reverting the
>> | change allows programs that require `racket/gui/base' to work
>> | with `raco exe'.
>> |
>> | There's another `lazy-require' under `begin-for-syntax' that
>> | doesn't seem to cause the same trouble, though.
>> :
>>M collects/racket/match/define-forms.rkt | 7 ++-
>
>
> A workaround for this issue (if Sam wants to try it again) is to just 
> insert
> a define-runtime-module-path-index form at phase 0 by hand. See
> /collects/syntax/parse/private/sc.rkt near the top for an example.

 I now have a local build with this technique -- how should I test that
 I haven't broken `raco exe` for gui programs?

 Also, could `lazy-require` use `syntax-local-lift-end-declaration` to
 insert this automatically when used at a phase>0?
 --
 sam th
 sa...@ccs.neu.edu
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev
>>
>>
>>
>> --
>> sam th
>> sa...@ccs.neu.edu



-- 
sam th
sa...@ccs.neu.edu
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


[racket-dev] Racket 5.3 release branch doesn't build

2012-07-18 Thread Aleksej Saushev
  Hello,

Racket 5.3 release branch doesn't build on NetBSD 6.0_BETA2 i386:

env CFLAGS="-O2 -pthread -I/usr/pkg/include -I/usr/include 
-I/usr/pkg/include/freetype2  -Wall   -I/usr/pkg/include -I/usr/include 
-I/usr/pkg/include/freetype2 -I/usr/pkg/include   -pthread" 
LDFLAGS="-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib -pthread 
-pthread" racket/racket3m -X 
"/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects" -N "raco 
setup" -l- setup--no-user
raco setup: bootstrapping from source...
>: contract violation
  expected: real?
  given: #f
  argument position: 1st
  other arguments...:
   0
  context...:
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/filename-version.rkt:14:4:
 loop
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/filename-version.rkt:
 [running body]
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/link-unit.rkt:
 [traversing imports]
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/dynext-unit.rkt:
 [traversing imports]
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/setup/setup-go.rkt:
 [traversing imports]
   
/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/setup/main.rkt:
 [running body]
*** Error code 1


-- 
HE CE3OH...

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


Re: [racket-dev] Racket 5.3 release branch doesn't build

2012-07-18 Thread Matthias Felleisen

We know and we're working on it. Sorry for the problem. 

On Jul 18, 2012, at 6:55 PM, Aleksej Saushev wrote:

>  Hello,
> 
> Racket 5.3 release branch doesn't build on NetBSD 6.0_BETA2 i386:
> 
> env CFLAGS="-O2 -pthread -I/usr/pkg/include -I/usr/include 
> -I/usr/pkg/include/freetype2  -Wall   -I/usr/pkg/include -I/usr/include 
> -I/usr/pkg/include/freetype2 -I/usr/pkg/include   -pthread" 
> LDFLAGS="-L/usr/pkg/lib -Wl,-R/usr/pkg/lib -L/usr/lib -Wl,-R/usr/lib -pthread 
> -pthread" racket/racket3m -X 
> "/tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects" -N "raco 
> setup" -l- setup--no-user
> raco setup: bootstrapping from source...
>> : contract violation
>  expected: real?
>  given: #f
>  argument position: 1st
>  other arguments...:
>   0
>  context...:
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/filename-version.rkt:14:4:
>  loop
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/filename-version.rkt:
>  [running body]
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/link-unit.rkt:
>  [traversing imports]
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/dynext/dynext-unit.rkt:
>  [traversing imports]
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/setup/setup-go.rkt:
>  [traversing imports]
>   
> /tmp/local-vcs/racket-rc/work/.destdir/usr/pkg/lib/racket/collects/setup/main.rkt:
>  [running body]
> *** Error code 1
> 
> 
> -- 
> HE CE3OH...
> 
> _
>  Racket Developers list:
>  http://lists.racket-lang.org/dev


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


Re: [racket-dev] [plt] Push #25015: master branch updated

2012-07-18 Thread Eli Barzilay
An hour and a half ago, e...@racket-lang.org wrote:
> 
> 36ee9f9 Eli Barzilay  2012-07-18 22:52
> :
> | Fix typo from commit 12a4ee8.
> :

At least it looked like a typo -- I didn't see `intptr_' defined
anywhere.  The weird thing is that it failed only on the ppc build, so
perhaps you meant some `intptr_' thing that exists elsewhere?

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] [plt] Push #25015: master branch updated

2012-07-18 Thread Eli Barzilay
[Sorry, I meant to send this to Matthew...]


Just now, Eli Barzilay wrote:
> An hour and a half ago, e...@racket-lang.org wrote:
> > 
> > 36ee9f9 Eli Barzilay  2012-07-18 22:52
> > :
> > | Fix typo from commit 12a4ee8.
> > :
> 
> At least it looked like a typo -- I didn't see `intptr_' defined
> anywhere.  The weird thing is that it failed only on the ppc build,
> so perhaps you meant some `intptr_' thing that exists elsewhere?

-- 
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Proposal for a "no-argument"

2012-07-18 Thread D Herring

On 07/01/2012 09:27 AM, Eli Barzilay wrote:

There rare cases where it is useful to have a value that means that no
argument was passed to a function.  In many of these cases there is a
plain value that is used as that mark, with the most idiomatic one
being #f, but sometimes others are used.  IMO, while such uses of #f
are idiomatic, they're a hack where an argument's domain is extended
only to mark "no argument".


I believe this is why CL lambda lists allow another variable name when 
specifying optional parameters.


http://www.lispworks.com/documentation/HyperSpec/Body/03_dab.htm
http://www.gigamonkeys.com/book/functions.html

(defun f (&optional (arg 'default-value arg-supplied?))
  (if arg-supplied?
  'real-value
  'default-value))


Matlab's nargin and nargout are another interesting approach.
http://www.mathworks.com/help/techdoc/ref/nargin.html
http://www.mathworks.com/help/techdoc/ref/nargout.html


A (supplied? arg) special form might also work.

- Daniel

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