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

2014-10-24 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]


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


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

2014-10-23 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]


While building racket-src.tgz I saw this error (similar to the one I saw for 
the last release).

raco setup: post-installing: pkgs/mzscheme-lib/mzscheme
raco setup: post-installing: pkgs/racket-doc/help
raco setup: --- checking package dependencies ---
raco setup: --- summary of errors ---
raco setup: error: during building docs for 
pkgs/db-doc/db/scribblings/db.scrbl
raco setup:   query-rows: attempt to write a readonly database
raco setup: context...:
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/sqlite3/connection.rkt:387:0:
 handle-status*
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/sqlite3/connection.rkt:347:8
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/sqlite3/connection.rkt:170:4:
 step method in connection%
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/sqlite3/connection.rkt:158:8:
 loop
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/sqlite3/connection.rkt:61:4:
 query1 method in connection%
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/db/private/generic/functions.rkt:165:0:
 query-rows8
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/setup/doc-db.rkt:94:3: temp60
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/setup/doc-db.rkt:498:2: loop
raco setup:  
/home/jon/tmp/racket/racket-src/racket/collects/setup/doc-db.rkt:89:0: 
doc-db-key-path22
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/racket-index/setup/xref.rkt:120:6:
 try
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/racket-index/setup/xref.rkt:116:2
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/scribble-lib/scribble/xref.rkt:65:19:
 send-arg73
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/scribble-lib/scribble/base-render.rkt:1114:28
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/scribble-lib/scribble/base-render.rkt:1114:28
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/scribble-lib/scribble/core.rkt:24:0:
 resolve-get/where
raco setup:  
/home/jon/tmp/racket/racket-src/racket/share/pkgs/scribble-lib/scribble/core.rkt:73:0:
 resolve-search...
raco setup:  
raco setup:  
make[1]: *** [install-3m] Error 1
make[1]: Leaving directory `/home/jon/tmp/racket/racket-src/racket/src/b'
make: *** [install] Error 2

I had previously built racket-6.1.0.900-src-builtpkgs.tgz and 
racket-6.1.0.900-src.tgz without seeing this error. This error is hard to 
reproduce. After seeing this error I ran 'make install' and the rest of the 
installation seemed to proceed smoothly.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


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

2014-07-21 Thread Jon Rafkind
On 07/21/2014 02:05 AM, Matthew Flatt wrote:
 At Sun, 20 Jul 2014 22:37:36 -0700, Jon Rafkind wrote:
 On 07/17/2014 05:03 PM, Ryan Culpepper wrote:
 * Jon Rafkind rafk...@cs.utah.edu
   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]
 Done, but I saw an error once during a build of 
 racket-minimal-6.0.900.900-src.tgz during 'make install'. I accidentally 
 destroyed the terminal and wasn't able to reproduce the error after two 
 additional tries, so I'm not sure what went wrong but it was something like

 raco: building scribblings/framework.rkt
   sqlite3: unable to read from database

 I'll try once or twice more to see if it happens again.
 A minimal Racket build would not include documentation or framework.
 Was something installed in user scope with a previous v6.0.900.900
 installation and maybe not removed before the Racket installation was
 itself removed?


Oh sorry, wrong copy/paste. I meant racket-6.0.900.900-src.tgz.

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


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

2014-07-20 Thread Jon Rafkind

On 07/17/2014 05:03 PM, Ryan Culpepper wrote:

 * Jon Rafkind rafk...@cs.utah.edu
   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]

Done, but I saw an error once during a build of 
racket-minimal-6.0.900.900-src.tgz during 'make install'. I accidentally 
destroyed the terminal and wasn't able to reproduce the error after two 
additional tries, so I'm not sure what went wrong but it was something like

raco: building scribblings/framework.rkt
  sqlite3: unable to read from database

I'll try once or twice more to see if it happens again.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


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

2014-04-17 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]


Done. For the binaries I only tested on 64-bit precise-pangolin.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v6.0, corrected url

2013-12-17 Thread Jon Rafkind
 
 * Jon Rafkind rafk...@cs.utah.edu
   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]


done. tested 32 and 64 bit ubuntu versions and building from source for racket 
and minimal using the 'source' package. I did not test the 'source + pre-built 
packages' tar.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v5.3.6, second call

2013-07-26 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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

done (already responded before)
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v5.3.6

2013-07-22 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]


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


Re: [racket-dev] Pre-Release Checklist for v5.3.4

2013-04-18 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]



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


[racket-dev] amd64 out of memory

2013-04-16 Thread Jon Rafkind
The PPA build has been failing the past 2 days or so for amd64 machines due to 
the Racket VM running out of memory, usually during 'raco setup' but not 
correlated with any specific collection. I don't have an amd64 machine on hand 
to test. Has anyone else seen this behavior on amd64 (or any architecture I 
guess)? The PPA i386 package seems to build fine.

See these buildlogs:
https://launchpadlibrarian.net/137534947/buildlog_ubuntu-oneiric-amd64.racket_5.3.4.3-20130416~oneiric_FAILEDTOBUILD.txt.gz
 
https://launchpadlibrarian.net/137534947/buildlog_ubuntu-oneiric-amd64.racket_5.3.4.3-20130416%7Eoneiric_FAILEDTOBUILD.txt.gz
https://launchpadlibrarian.net/137532928/buildlog_ubuntu-quantal-amd64.racket_5.3.4.3-20130416~quantal_FAILEDTOBUILD.txt.gz
 
https://launchpadlibrarian.net/137532928/buildlog_ubuntu-quantal-amd64.racket_5.3.4.3-20130416%7Equantal_FAILEDTOBUILD.txt.gz
https://launchpadlibrarian.net/137533283/buildlog_ubuntu-raring-amd64.racket_5.3.4.3-20130416~raring_FAILEDTOBUILD.txt.gz
 
https://launchpadlibrarian.net/137533283/buildlog_ubuntu-raring-amd64.racket_5.3.4.3-20130416%7Eraring_FAILEDTOBUILD.txt.gz
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] amd64 out of memory

2013-04-16 Thread Jon Rafkind
The build already passes '-j 1'.

On 04/16/2013 09:55 AM, Tobias Hammer wrote:
 I get this on i386, when the VM sucks up ~ 2GB of memory. You can try
 env PLT_SETUP_OPTIONS=-j 1, that helps for me.

 Tobias


 On Tue, 16 Apr 2013 17:50:52 +0200, Jon Rafkind rafk...@cs.utah.edu wrote:

 The PPA build has been failing the past 2 days or so for amd64 machines due 
 to the Racket VM running out of memory, usually during 'raco setup' but not 
 correlated with any specific collection. I don't have an amd64 machine on 
 hand to test. Has anyone else seen this behavior on amd64 (or any 
 architecture I guess)? The PPA i386 package seems to build fine.

 See these buildlogs:
 https://launchpadlibrarian.net/137534947/buildlog_ubuntu-oneiric-amd64.racket_5.3.4.3-20130416~oneiric_FAILEDTOBUILD.txt.gz
  
 https://launchpadlibrarian.net/137534947/buildlog_ubuntu-oneiric-amd64.racket_5.3.4.3-20130416%7Eoneiric_FAILEDTOBUILD.txt.gz
 https://launchpadlibrarian.net/137532928/buildlog_ubuntu-quantal-amd64.racket_5.3.4.3-20130416~quantal_FAILEDTOBUILD.txt.gz
  
 https://launchpadlibrarian.net/137532928/buildlog_ubuntu-quantal-amd64.racket_5.3.4.3-20130416%7Equantal_FAILEDTOBUILD.txt.gz
 https://launchpadlibrarian.net/137533283/buildlog_ubuntu-raring-amd64.racket_5.3.4.3-20130416~raring_FAILEDTOBUILD.txt.gz
  
 https://launchpadlibrarian.net/137533283/buildlog_ubuntu-raring-amd64.racket_5.3.4.3-20130416%7Eraring_FAILEDTOBUILD.txt.gz



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


[racket-dev] build: schemef.h - schemex.h

2013-03-10 Thread Jon Rafkind
The ubuntu ppa build has been failing for a while, and I finally tracked it 
down to this issue: src/racket/src/schemef.h has a newer timestamp than 
src/racket/src/schemex.h on a fresh git checkout from github. This results in 
the make system trying to execute the following

make[6]: Entering directory `/home/jon/tmp/plt2/src/b/racket/src'
racket ../../../racket/src/makex.rkt  ../../../racket/src/schemef.h  
../../../racket/src/schemex.h

On a fresh machine with no racket installed, this fails because there is no 
'racket' executable available. I'm not sure what the best solution is. Right 
now I'm thinking of just doing a 'touch *' immediately after a 'git pull' for 
the build machine, since schemex.h probably should not be built every time.. 
But in general I imagine someone might run into this issue on their own 
machine. I'm mildly surprised it hasn't happened to anyone yet.

For whatever reason, this issue only started appearing about 3 weeks ago. 
Perusing the git log doesn't show much related to schemex.h or whatever so I'm 
not sure what the root cause is.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] build: schemef.h - schemex.h

2013-03-10 Thread Jon Rafkind
Yes, I'll make that change.

On 03/10/2013 07:09 PM, Robby Findler wrote:
 Seems better to blow everything away and re-git clone for an automated 
 build machine.

 Robby


 On Sun, Mar 10, 2013 at 7:56 PM, Jon Rafkind rafk...@cs.utah.edu 
 mailto:rafk...@cs.utah.edu wrote:

 On 03/10/2013 06:14 PM, Eli Barzilay wrote:
  20 minutes ago, Jon Rafkind wrote:
  The ubuntu ppa build has been failing for a while, and I finally
  tracked it down to this issue: src/racket/src/schemef.h has a newer
  timestamp than src/racket/src/schemex.h on a fresh git checkout from
  github.
  This shouldn't be right.  Git doesn't track modification times
  (intentionally), so a fresh clone should have all of the dates be the
  same.  If you update the tree (eg, if you checkout a different
  branch), then files that were modified get a new date -- as usual.
 

 Ok, good point. I think the issue is that I only do a 'git pull' on the 
 machine that sends the plt tar to the ubuntu build machine, and so schemef.h 
 was updated without schemex.h being rebuilt. This is likely only going to 
 occur for people who have automated builds setup for racket, which is 
 probably few. So I'll just go with the 'touch *' solution for now.

 On the 'git pull' machine:

 $ ls -l scheme*
 -rw-rw-r-- 1 jon jon 65162 Mar  1 01:00 schemef.h
 -rw-rw-r-- 1 jon jon 58815 Feb 21 01:00 schemex.h
 -rw-rw-r-- 1 jon jon 51616 Feb  1 14:12 schemex.inc
 -rw-rw-r-- 1 jon jon 54988 Feb  1 14:12 schemexm.h
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev



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


[racket-dev] patch for double spaced autobib

2013-02-28 Thread Jon Rafkind
Attached is a patch that adds a keyword, #spaces, to `define-cite', which makes 
the generate bibliography have N spaces between each entry.

(define-cite ... g #:spaces 2)
(g)

..output..

[1] entry 1

[2] entry 2

If it looks ok I can push it, and update the docs as well.
diff --git a/collects/scriblib/autobib.rkt b/collects/scriblib/autobib.rkt
index 4d31b69..a6baa61 100644
--- a/collects/scriblib/autobib.rkt
+++ b/collects/scriblib/autobib.rkt
@@ -222,7 +222,8 @@
 (define (gen-bib tag group sec-title 
  style maybe-disambiguator 
  maybe-render-date-bib maybe-render-date-cite 
- maybe-date? maybe-date=?)
+ maybe-date? maybe-date=?
+ spaces)
   (define disambiguator (or maybe-disambiguator default-disambiguation))
   (define date? (or maybe-date? default-date?))
   (define date=? (or maybe-date=? default-date=?))
@@ -304,12 +305,22 @@
 (bib-para bib (and ambiguous?? (disambiguator num-ambiguous*)) i))
   (values bib num-ambiguous* (cons para* rev-disambiguated*
   (reverse rev-disambiguated*)))
+
+  (define (make-space)
+(list
+  (make-paragraph (make-style #f '()) '())
+  (make-paragraph (make-style #f '()) '(
+
   (make-part #f
  `((part ,tag))
  (list sec-title)
  (make-style #f '(unnumbered))
  null
- (list (make-table (send style bibliography-table-style) disambiguated))
+ (list (make-table (send style bibliography-table-style)
+   (add-between #:splice? #t
+disambiguated
+(for/list ([i (in-range 1 spaces)])
+  (make-space)
  null))
 
 (define (bib-entry bib style disambiguation render-date-bib i)
@@ -353,6 +364,7 @@
 (~or (~optional (~seq #:style style) #:defaults ([style #'author+date-style]))
  (~optional (~seq #:disambiguate fn) #:defaults ([fn #'#f]))
  (~optional (~seq #:render-date-in-bib render-date-bib) #:defaults ([render-date-bib #'#f]))
+ (~optional (~seq #:spaces spaces) #:defaults ([spaces #'1]))
  (~optional (~seq #:render-date-in-cite render-date-cite) #:defaults ([render-date-cite #'#f]))
  (~optional (~seq #:date? date?) #:defaults ([date? #'#f]))
  (~optional (~seq #:date=? date=?) #:defaults ([date=? #'#f]))) ...)
@@ -365,7 +377,7 @@
  (define (citet bib-entry . bib-entries)
(add-inline-cite group (cons bib-entry bib-entries) the-style date? date=?))
  (define (generate-bibliography #:tag [tag doc-bibliography] #:sec-title [sec-title Bibliography])
-   (gen-bib tag group sec-title the-style fn render-date-bib render-date-cite date? date=?]))
+   (gen-bib tag group sec-title the-style fn render-date-bib render-date-cite date? date=? spaces]))
 
 (define (ends-in-punc? e)
   (regexp-match? #rx[.!?,]$ (content-string e)))
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v5.3.2

2013-01-17 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]

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


Re: [racket-dev] Identifier macros

2012-12-05 Thread Jon Rafkind
Actually I would hope that section 1.2 (syntax model) in the reference would 
explain exactly how macros are invoked. Unless I'm missing something it never 
mentions exactly what syntax object is passed to the transformer function once 
a macro binding is observed.

It could either go in paragraph about transformer bindings in the 'expansion 
steps' section (1.2.3.2) or in the section specifically about transformer 
bindings (1.2.3.5). Something like

If the binding appears at the head of a syntax object then the entire syntax 
object is passed as the argument to the transformer. In any other context only 
the syntax object for the binding itself is used as the argument.


On 12/05/2012 12:27 PM, Matthew Flatt wrote:
 At Wed, 5 Dec 2012 14:25:29 -0500, Carl Eastlund wrote:
 On looking back, my confusion was not entirely due to the documentation,
 but partly from my own expectations coming in to it.  If I just look up
 identifier macro, trying to figure out how to write one, I get a link to
 section 16.1.5. 
 Ah, that makes sense. Thanks!

 This does not directly state the context involving
 syntax-rules; it instead describes an identifier macro simply as ...works
 in any expression.  The documentation then goes on to present
 syntax-id-rules as a mechanism for identifier macros, presenting set!
 transformation as well.  So while it doesn't explicitly state that set!
 transformers and identifier macros are the same thing, it does appear to
 imply it and doesn't clarify the matter.  If we're going to use identifier
 macro as an indexed technical term, we should probably have a more precise
 discussion of it in the reference manual as well that spells out how these
 things work.  I know I wasn't the only one surprised to find out that
 ordinary define-syntax  syntax-case / syntax-parse macros can expand (what
 most people would call) identifier macros.  The only way I can figure this
 out in the documentation is from a very close reading of the low-level
 expansion model, which is not written terribly plainly to begin with.

 --Carl

 Carl Eastlund

 On Wed, Dec 5, 2012 at 2:12 PM, Matthew Flatt mfl...@cs.utah.edu wrote:

 At Wed, 5 Dec 2012 09:41:37 -0500, Matthias Felleisen wrote:
 I think two additions/refinements would be good here:

 1. The section on identifier macros in the Guide (16.1.5) should mention
 that
 define-syntax introduces short-hands for identifiers, period.
 I think a `define-syntax' that binds to a procedure of one argument
 is what you mean --- but section 16.1 is about `syntax-rules' and
 `syntax-id-rules', not procedures as transformers.

 Improving the start of 16.2 along these lines makes sense, along with a
 better connection to 16.1. Or maybe you're suggesting a different
 organization than the current 16.1--16.2 split?

 I'm still unclear on the specific text that confused Carl, though. Was
 it 16.1?



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

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


[racket-dev] build failed on ubuntu 13.04

2012-11-07 Thread Jon Rafkind
Racket failed to build for the ppa on ubuntu 13.04 (raring). I'm not exactly 
sure what the issue is but the details are that its using 
gcc-4.7_4.7.2-5ubuntu5.

Full build log: 
https://launchpadlibrarian.net/122334588/buildlog_ubuntu-raring-i386.racket_5.3-20121107~raring_FAILEDTOBUILD.txt.gz

The error is

make[5]: Entering directory `/build/buildd/racket-5.3/build/racket/gc2'
 gcc -I./.. -I/build/buildd/racket-5.3/src/racket/gc2/../include -g -pthread
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -Wall  -I./.. -c 
/build/buildd/racket-5.3/src/racket/gc2/gc2.c -o gc2.o
 In file included from /build/buildd/racket-5.3/src/racket/gc2/gc2.c:15:0:
 /build/buildd/racket-5.3/src/racket/gc2/newgc.c: In function 
'GC_message_objects_size':
 /build/buildd/racket-5.3/src/racket/gc2/newgc.c:1594:5: warning: format '%lu' 
expects argument of type 'long unsigned int', but argument 2 has type 
'uintptr_t' [-Wformat]
 In file included from /build/buildd/racket-5.3/src/racket/gc2/newgc.c:2438:0,
  from /build/buildd/racket-5.3/src/racket/gc2/gc2.c:15:
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c: At top 
level:
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:63:35: 
warning: 'struct siginfo' declared inside parameter list [enabled by default]
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:63:35: 
warning: its scope is only this definition or declaration, which is probably 
not what you want [enabled by default]
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c: In 
function 'fault_handler':
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:65:15: 
error: dereferencing pointer to incomplete type
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:67:13: 
error: dereferencing pointer to incomplete type
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:71:9: 
error: dereferencing pointer to incomplete type
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:87:46: 
error: dereferencing pointer to incomplete type
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:87:58: 
error: dereferencing pointer to incomplete type
  /build/buildd/racket-5.3/src/racket/gc2/sighand.c:103:11: 
error: dereferencing pointer to incomplete type
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] build failed on ubuntu 13.04

2012-11-07 Thread Jon Rafkind
Ok I think I found the issue. Commit 1e375bab48f3d704bb2beeade77d05a2a3a642de 
is not in stable. The commit is basically

diff --git a/src/racket/gc2/sighand.c b/src/racket/gc2/sighand.c
index c40aa09..b91ec7c 100644
--- a/src/racket/gc2/sighand.c
+++ b/src/racket/gc2/sighand.c
@@ -60,7 +60,7 @@ void launchgdb() {
 }
 #endif

-void fault_handler(int sn, struct siginfo *si, void *ctx)
+void fault_handler(int sn, siginfo_t *si, void *ctx)
 {


So should this commit be merged to stable?

On 11/07/2012 09:17 PM, Jon Rafkind wrote:
 Racket failed to build for the ppa on ubuntu 13.04 (raring). I'm not exactly 
 sure what the issue is but the details are that its using 
 gcc-4.7_4.7.2-5ubuntu5.

 Full build log: 
 https://launchpadlibrarian.net/122334588/buildlog_ubuntu-raring-i386.racket_5.3-20121107~raring_FAILEDTOBUILD.txt.gz

 The error is

 make[5]: Entering directory `/build/buildd/racket-5.3/build/racket/gc2'
  gcc -I./.. -I/build/buildd/racket-5.3/src/racket/gc2/../include -g -pthread  
   -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -Wall  -I./.. -c 
 /build/buildd/racket-5.3/src/racket/gc2/gc2.c -o gc2.o
  In file included from /build/buildd/racket-5.3/src/racket/gc2/gc2.c:15:0:
  /build/buildd/racket-5.3/src/racket/gc2/newgc.c: In function 
 'GC_message_objects_size':
  /build/buildd/racket-5.3/src/racket/gc2/newgc.c:1594:5: warning: format 
 '%lu' expects argument of type 'long unsigned int', but argument 2 has type 
 'uintptr_t' [-Wformat]
  In file included from /build/buildd/racket-5.3/src/racket/gc2/newgc.c:2438:0,
   from /build/buildd/racket-5.3/src/racket/gc2/gc2.c:15:
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c: At top 
 level:
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:63:35: 
 warning: 'struct siginfo' declared inside parameter list [enabled by default]
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:63:35: 
 warning: its scope is only this definition or declaration, which is probably 
 not what you want [enabled by default]
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c: In 
 function 'fault_handler':
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:65:15: 
 error: dereferencing pointer to incomplete type
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:67:13: 
 error: dereferencing pointer to incomplete type
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:71:9: 
 error: dereferencing pointer to incomplete type
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:87:46: 
 error: dereferencing pointer to incomplete type
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:87:58: 
 error: dereferencing pointer to incomplete type
   /build/buildd/racket-5.3/src/racket/gc2/sighand.c:103:11: 
 error: dereferencing pointer to incomplete type
 _
   Racket Developers list:
   http://lists.racket-lang.org/dev

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


Re: [racket-dev] Pre-Release Checklist for v5.3.1

2012-10-17 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   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]

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


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

2012-09-05 Thread Jon Rafkind
Frtime has a build error now

raco setup: error: during making for frtime (FrTime)
raco setup:   module: identifier already imported from: lang-ext.rkt
raco setup: at: undefined?
raco setup: in: (rename frtime/core/frp undefined? undefined?)
raco setup: error: during making for frtime/opt
raco setup:   module: identifier already imported from: racket
raco setup: at: third
raco setup: in: (rename srfi/1 third third)
make[2]: *** [install-3m] Error 1
make[2]: Leaving directory `/build/buildd/racket-5.3.0.22/build'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/build/buildd/racket-5.3.0.22/build'
make: *** [common-install-impl] Error 2

On 09/04/2012 11:03 PM, gcoo...@racket-lang.org wrote:
 gcooper has updated `master' from ba56fd72da to 3d8fc4ad01.
   http://git.racket-lang.org/plt/ba56fd72da..3d8fc4ad01

 =[ 57 Commits ]=
 Directory summary:
   57.8% collects/frtime/animation/
   19.8% collects/frtime/frlibs/
3.0% collects/frtime/opt/
   19.1% collects/frtime/


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


Re: [racket-dev] Pre-Release Checklist for v5.3

2012-07-25 Thread Jon Rafkind


 * Jon Rafkind rafk...@cs.utah.edu
   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]


There was a problem with unix style installation:


Checking the integrity of the binary archive... ok.
Unpacking into /home/jon/tmp/binary/racket/racket-tmp-install (Ctrl+C to 
abort)...
Done.
Moving bin - /home/jon/tmp/binary/racket/bin
Moving collects - /home/jon/tmp/binary/racket/lib/racket/collects
cMoving doc - /home/jon/tmp/binary/racket/share/racket/doc
Moving include - /home/jon/tmp/binary/racket/include/racket
Moving lib - /home/jon/tmp/binary/racket/lib/racket
Moving man - /home/jon/tmp/binary/racket/share/man
Moving README - /home/jon/tmp/binary/racket/share/racket/doc/README
Writing uninstaller at: /home/jon/tmp/binary/racket/bin/racket-uninstall...
Rewriting configuration file at: 
/home/jon/tmp/binary/racket/lib/racket/collects/config/config.rkt...
Recompiling to 
/home/jon/tmp/binary/racket/lib/racket/collects/config/compiled/config_rkt.zo...
default-load-handler: cannot open input file
  path: 
/home/jon/tmp/binary/racket/racket-tmp-install/collects/setup/compiled/unixstyle-install_rkt.zo
  system error: No such file or directory; errno=2
  context...:
   standard-module-name-resolver
Error: installation failed
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Code micro-level organization

2012-05-30 Thread Jon Rafkind
On 05/30/2012 04:07 PM, Eli Barzilay wrote:

 Having expressions come from the bottom, using the down arrow, seems
 sort of wierd.
 Here's a concrete example:

   (○ (let ([x 10]) ↓)
  (for ([i (in-range x)]) ↓)
  (for ([j (in-range i)]) ↓)
  ...etc...)

 Do you have a concrete suggestion for doing that?


Well in this case its easy, just remove the closing ) from each of the lines so 
the next line is nested in the right place. If you were going to use the down 
arrow in a different position, like

(for ([i ↓]) ..blah..)
(let ...)

I think things would get out of hand quickly because the physical gap between 
the for expression and the let expression could get quite large.

I mean I hope I'm not trivializing your issue, do you have a different example?
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


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

2012-05-18 Thread Jon Rafkind
yea it was, I have a command line tool that prints out all the imports and 
exports of a module. you wanted it to show contracts and maybe types too 
eventually so I started on this 'module-interface' thing but I didn't work on 
it much since the initial import..

On 05/18/2012 02:07 PM, Matthias Felleisen wrote:
 Was this an attempt to show the interfaces of a module? I do wish we had one 
 inside of DrRacket. 


 On May 18, 2012, at 4:05 PM, as...@racket-lang.org wrote:

 asumu has updated `master' from f34258e253 to a00cd7ebff.
  http://git.racket-lang.org/plt/f34258e253..a00cd7ebff

 =[ 1 Commits ]==

 Directory summary:
 100.0% collects/drracket/private/module-interface/

 ~~

 a00cd7e Asumu Takikawa as...@racket-lang.org 2012-05-18 15:50
 :
 | Remove drracket/private/module-interface.
 |
 | With permission from Jon Rafkind.
 :
  D collects/drracket/private/module-interface/check.rkt
  D collects/drracket/private/module-interface/gui.rkt

 =[ Overall Diff ]===


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


[racket-dev] make-evaluator fails for honu

2012-05-07 Thread Jon Rafkind
I'm trying to evaluate honu programs inside a sandbox but I get an error from 
`make-evaluator'. Other languages work (racket/base, typed/racket), its only 
'honu that fails so I must have set up something incorrectly. Any idea what it 
could be?

current-directory: `exists' access denied for /home/jon/tmp/

 === context ===
/home/jon/bin/plt/collects/setup/private/main-collects.rkt:19:4: 
find-main-collects
/home/jon/bin/plt/collects/racket/private/promise.rkt:103:10
/home/jon/bin/plt/collects/racket/private/more-scheme.rkt:268:2: 
call-with-exception-handler
...

From this code

#lang at-exp racket/base

(require racket/sandbox)

(define (test input)
  (define honu-eval (make-evaluator 'honu))
  (honu-eval input))

(define input string-append)

(test @input{1})

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


Re: [racket-dev] make-evaluator fails for honu

2012-05-07 Thread Jon Rafkind
The short answer is to use call-with-trusted-sandbox-configuration so the 
sandbox can make filesystem calls without being hindered.

On 05/07/2012 11:46 AM, Jon Rafkind wrote:
 I'm trying to evaluate honu programs inside a sandbox but I get an error from 
 `make-evaluator'. Other languages work (racket/base, typed/racket), its only 
 'honu that fails so I must have set up something incorrectly. Any idea what 
 it could be?

 current-directory: `exists' access denied for /home/jon/tmp/

  === context ===
 /home/jon/bin/plt/collects/setup/private/main-collects.rkt:19:4: 
 find-main-collects
 /home/jon/bin/plt/collects/racket/private/promise.rkt:103:10
 /home/jon/bin/plt/collects/racket/private/more-scheme.rkt:268:2: 
 call-with-exception-handler
 ...

 From this code

 #lang at-exp racket/base

 (require racket/sandbox)

 (define (test input)
   (define honu-eval (make-evaluator 'honu))
   (honu-eval input))

 (define input string-append)

 (test @input{1})

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

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


Re: [racket-dev] XREPL and readline-6.*

2012-05-07 Thread Jon Rafkind
On 05/07/2012 07:01 PM, Eli Barzilay wrote:
 On January 11th, Eli Barzilay wrote:
 10 minutes ago, Marijn wrote:
 On 19-12-11 16:45, Marijn wrote:
 that makes sense as my installed and the current upstream readline
 version is 6.2. Any chance that could be fixed?
 This is still current,
 Did you try to change the version in the source and see if it works?
 Is there anyone with readline v6 who can see if it's still compatible
 with our glue?


I have readline 6 and xrepl still works with it.

$ ls -l /usr/lib/libreadline.so
lrwxrwxrwx 1 root root 21 2011-08-01 00:09 /usr/lib/libreadline.so - 
/lib/libreadline.so.6
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] version number for functions/forms in docs

2012-04-27 Thread Jon Rafkind
+1

On 04/27/2012 11:25 AM, Laurent wrote:
 Hi,

 If that's not too difficult to do (maybe automatically), it would be nice if 
 the docs could tell if a function/form has changed or has been added recently.
 Maybe a note in the margin like Added in 5.2.1 or Changed in 5.3.0.
 It would be helpful for backward compatibility.

 Laurent


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

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


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

2012-04-26 Thread Jon Rafkind
On 04/26/2012 09:35 PM, Sam Tobin-Hochstadt wrote:
 On Thu, Apr 26, 2012 at 11:13 PM,  rafk...@racket-lang.org wrote:
 565e844 Jon Rafkind rafk...@racket-lang.org 2012-04-24 14:53
 :
 | [honu] add vim syntax file for honu
 :
  A collects/honu/misc/honu.vim
 I think this file should go in collects/meta/contrib, along with
 things like shell completion scripts.

I thought about that too, but then I thought putting it there is a good way to 
forget about its (honu.vim) existence.
_
  Racket Developers list:
  http://lists.racket-lang.org/dev


Re: [racket-dev] Pre-Release Checklist for v5.3

2012-04-18 Thread Jon Rafkind


 * Jon Rafkind rafk...@cs.utah.edu
   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]

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


Re: [racket-dev] Pre-Release Checklist for v5.2.1

2012-01-17 Thread Jon Rafkind
On 01/17/2012 04:44 PM, Ryan Culpepper wrote:
 * Jon Rafkind rafk...@cs.utah.edu
   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]


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


Re: [racket-dev] Racket home page proposal

2011-12-19 Thread Jon Rafkind
+1

On 12/19/2011 10:34 PM, Asumu Takikawa wrote:
 Hi all,

 Currently, the Racket home page is really nice, but it leaves a
 significant amount of vertical space unused that could be used to
 communicate information.

 How would people feel about adding more content below the fold on the
 website? To be more concrete about this, here's a mockup I made:

 http://www.ccs.neu.edu/home/asumu/racket-home/
 (should look fine on Firefox, Opera, and Chrome at least)

 Notably, it contains a twitter feed for @racketlang and entries from the
 blog. These might help to give the first impression that we're an active
 community.

 Cheers,
 Asumu
 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] scribble -- an ncurses game

2011-12-13 Thread Jon Rafkind
A user of mine alerted me to the fact that 'scribble' is a crossword puzzle 
similar to scrabble. He had it installed in ubuntu so when he typed make in my 
source tree he ended up playing a game instead of generating documentation.

$ aptitude search scribble
p   scribble  - Popular crossword game, 
similar to Scrabble(R)

Well that's my public service announcement for the day. (My dream of dreams is 
to rename 'scribble' to 'racket:scribble'..)
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] scribble -- an ncurses game

2011-12-13 Thread Jon Rafkind
On 12/13/2011 08:11 PM, Matthew Flatt wrote:
 You can use `raco scribble' instead of `scribble'. Maybe `raco
 scribble' should be the preferred form?

Sounds like a good solution to me for now, thanks.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] no backtrace for error in macro

2011-11-08 Thread Jon Rafkind
When this program is run in DrRacket the error is displayed in the interactions 
pane with a backtrace icon next to it but if you click that icon the backtrace 
window is blank. It would be nice to get some sort of backtrace or I suppose in 
the worst case no backtrace icon should appear.

#lang racket

(define-syntax (foo stx) (raise-syntax-error 'foo dont use foo))
(define-syntax (bar stx)
  #'(foo))

(bar)


_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] no backtrace for error in macro

2011-11-08 Thread Jon Rafkind
Ok. Whats your (the) strategy for debugging these sorts of errors? Yesterday I 
just stared at the macro debugger output for a while until I saw where an 
identifier that ultimately raised a syntax error showed up.

On 11/08/2011 10:41 AM, Robby Findler wrote:
 This is a change I made recently and I put a rationale and explanation
 in the commit message here:

   
 http://git.racket-lang.org/plt/commit/e1ce0a0d1e6120354ace65dc3fda76d0442fb3a1

 Robby

 On Tue, Nov 8, 2011 at 11:30 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 When this program is run in DrRacket the error is displayed in the 
 interactions pane with a backtrace icon next to it but if you click that 
 icon the backtrace window is blank. It would be nice to get some sort of 
 backtrace or I suppose in the worst case no backtrace icon should appear.

 #lang racket

 (define-syntax (foo stx) (raise-syntax-error 'foo dont use foo))
 (define-syntax (bar stx)
  #'(foo))

 (bar)


 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] no backtrace for error in macro

2011-11-08 Thread Jon Rafkind
So is there a more efficient way to debug the issue than looking at the macro 
debugger that you know of?

Also FWIW the error I meant arose from exactly the situation below. I created a 
new identifier meant to be used as a literal:

  (define-syntax my-new-literal (lambda (stx) (raise-syntax-error 'literal 
this is a literal meant to be used inside a macro))

And the literal ended up in code outside the intended form that would have 
consumed it so the literal's syntax error was raised.

On 11/08/2011 10:51 AM, Robby Findler wrote:
 It isn't clear to me that the stacktrace is actually containing useful
 information in such cases. That is, the stack will not tell you which
 macro introduced the free identifier, only the code that finds the
 identifier (that is, the code that detects free variables).

 Robby

 On Tue, Nov 8, 2011 at 11:46 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 Ok. Whats your (the) strategy for debugging these sorts of errors? Yesterday 
 I just stared at the macro debugger output for a while until I saw where an 
 identifier that ultimately raised a syntax error showed up.

 On 11/08/2011 10:41 AM, Robby Findler wrote:
 This is a change I made recently and I put a rationale and explanation
 in the commit message here:

   
 http://git.racket-lang.org/plt/commit/e1ce0a0d1e6120354ace65dc3fda76d0442fb3a1

 Robby

 On Tue, Nov 8, 2011 at 11:30 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 When this program is run in DrRacket the error is displayed in the 
 interactions pane with a backtrace icon next to it but if you click that 
 icon the backtrace window is blank. It would be nice to get some sort of 
 backtrace or I suppose in the worst case no backtrace icon should appear.

 #lang racket

 (define-syntax (foo stx) (raise-syntax-error 'foo dont use foo))
 (define-syntax (bar stx)
  #'(foo))

 (bar)


 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev



_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] no backtrace for error in macro

2011-11-08 Thread Jon Rafkind
On 11/08/2011 11:18 AM, Robby Findler wrote:
 On Tue, Nov 8, 2011 at 12:17 PM, Jon Rafkind rafk...@cs.utah.edu wrote:
 I guess runtime stack traces won't help. It would be nice to see all the 
 locations the syntax went through in its lifetime. Maybe it could be stored 
 as a syntax property?
 You mean you could, say, click on some subexpression in step N and
 then go back one step and find that expression (if it still exists) in
 the previous step in the stepper?

I suppose that could be useful if that stepper showed me the last expression 
that it tried to execute before the syntax error was raised. Then I would have 
seen

  (... my-new-literal ...)
-
  dont use my-new-literal

If I could click on 'my-new-literal' in the code above the arrow and keep 
pressing back until I found its origin then I would be happy. Right now the 
last step before the syntax error does not highlight 'my-new-literal' as the 
syntax that is to be executed next. Actually even if I just saw that (the next 
step to be executed with code highlighted) I could have found my issue very 
quickly.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Pre-Release Checklist for v5.2

2011-10-18 Thread Jon Rafkind
On 10/17/2011 07:02 PM, Ryan Culpepper wrote:
 Checklist items for the v5.2 release

 * Jon Rafkind rafk...@cs.utah.edu
   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]

done
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] ACM publishing and ArXiv

2011-09-30 Thread Jon Rafkind
So what exactly is the benefit of publishing with ACM these days? Is it just to 
prove that your paper was peer reviewed?

On 09/30/2011 12:02 PM, John Clements wrote:
 On Sep 30, 2011, at 10:07 AM, John Clements wrote:

 In case you didn't catch Stephanie Weirich's post of this on 
 plus.google.com, here's some very interesting information about ArXiv and 
 ACM and where copyrights intersect.

 It may be that you can avoid much of this by only publishing draft 
 versions of your paper on ArXiv; I Am Not A Lawyer.
 Oh for heaven's sake.  Neglected to post the link.

 http://r6.ca/blog/20110930T012533Z.html

 John



 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

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

2011-09-21 Thread Jon Rafkind
How do I see the Honu docs now? I just rebuilt, searching for 'honu' doesn't 
find it.

On 09/21/2011 02:10 PM, e...@racket-lang.org wrote:
 eli has updated `master' from 5024b690ca to 81e0f3f3d7.
   http://git.racket-lang.org/plt/5024b690ca..81e0f3f3d7

 =[ 1 Commits ]==

 Directory summary:
   50.0% collects/honu/scribblings/
   49.9% collects/scribblings/honu/

 ~~

 81e0f3f Eli Barzilay e...@racket-lang.org 2011-09-21 16:10
 :
 | Move `scribblings/honu' to `honu/scribblings'.
 |
 | Also, use `user-doc' since it's not distributed, yet.
 :
   A collects/honu/scribblings/info.rkt
   R collects/{scribblings/honu = honu/scribblings}/honu.scrbl (100%)
   D collects/scribblings/honu/info.rkt

 =[ Overall Diff ]===

 collects/honu/scribblings/info.rkt
 ~~
 --- /dev/null
 +++ NEW/collects/honu/scribblings/info.rkt
 @@ -0,0 +1,3 @@
 +#lang setup/infotab
 +
 +(define scribblings '((honu.scrbl (multi-page user-doc) (experimental 
 40

 collects/scribblings/honu/info.rkt
 ~~
 --- OLD/collects/scribblings/honu/info.rkt
 +++ /dev/null
 @@ -1,3 +0,0 @@
 -#lang setup/infotab
 -
 -(define scribblings '((honu.scrbl (multi-page) (experimental 40

 *** See above for renames and copies ***

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-09-21 Thread Jon Rafkind
On 09/21/2011 05:27 PM, Eli Barzilay wrote:
 An hour and a half ago, Jon Rafkind wrote:
 How do I see the Honu docs now? I just rebuilt, searching for 'honu'
 doesn't find it.
 Run `raco docs'.


And then what? Do you see Honu in there? I don't.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-09-21 Thread Jon Rafkind
On 09/21/2011 05:34 PM, Ryan Culpepper wrote:
 On 09/21/2011 05:31 PM, Eli Barzilay wrote:
 Just now, Jon Rafkind wrote:
 On 09/21/2011 05:27 PM, Eli Barzilay wrote:
 An hour and a half ago, Jon Rafkind wrote:
 How do I see the Honu docs now? I just rebuilt, searching for 'honu'
 doesn't find it.
 Run `raco docs'.

 And then what? Do you see Honu in there? I don't.

 I don't know what went wrong, but I definitely see a honu manual
 there.  Right below the algol manual.

 Jon: did you run raco setup as opposed to raco setup honu? The index, 
 main page, etc aren't rebuilt unless you run setup on the whole tree.

 Ryan

I did 'make  make install' after doing a git pull, but i just tried to erase 
some stuff and am running 'raco setup' right now.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-09-21 Thread Jon Rafkind
On 09/21/2011 05:35 PM, Jon Rafkind wrote:
 On 09/21/2011 05:34 PM, Ryan Culpepper wrote:
 On 09/21/2011 05:31 PM, Eli Barzilay wrote:
 Just now, Jon Rafkind wrote:
 On 09/21/2011 05:27 PM, Eli Barzilay wrote:
 An hour and a half ago, Jon Rafkind wrote:
 How do I see the Honu docs now? I just rebuilt, searching for 'honu'
 doesn't find it.
 Run `raco docs'.
 And then what? Do you see Honu in there? I don't.
 I don't know what went wrong, but I definitely see a honu manual
 there.  Right below the algol manual.
 Jon: did you run raco setup as opposed to raco setup honu? The index, 
 main page, etc aren't rebuilt unless you run setup on the whole tree.

 Ryan
 I did 'make  make install' after doing a git pull, but i just tried to 
 erase some stuff and am running 'raco setup' right now.

Ok all set now.. not sure exactly what fixed it though.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] current-read-interaction

2011-09-15 Thread Jon Rafkind
For Honu I set up the `current-read-interaction' procedure to read a string of 
characters ended by a newline and to parse that with `honu-read-syntax'. This
leads to two issues

1. this works on the command line but in drracket after typing '1' and pressing 
enter the prompt never comes back and drracket chews up some cpu.
2. I wanted to make ctrl-d quit the repl immediately so I look for an 
eof-object in the stream and if found I try to return #'(exit). The Honu parser 
gets
involved at that point so it doesn't quite work, but anyway is that the right 
strategy?

Here is my repl reader:

(define (read-one-line name input)
  (define quit? #f)
  (define one-line
(with-output-to-string
  (lambda ()
(let loop ()
  (define next (read-char input))
  (when (eof-object? next)
(set! quit? #t))
  (when (not (or (eof-object? next)
 (char=? next #\newline)))
(display next)
(loop))
  (if quit?
;; this isn't right, somehow communicate to the system that the repl should 
close
#'(exit)
(honu-read-syntax name (open-input-string one-line

(provide configure)
(define (configure . args)
  (current-read-interaction read-one-line))
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Fwd: [clipperz] Re: Marketing Ideas

2011-09-09 Thread Jon Rafkind
Is there any correlation between number of likes and well.. anything?

On 09/09/2011 12:43 PM, John Clements wrote:
 Yes, we hate facebook.  But our facebook page has a GENUINELY EMBARRASSING 
 number of likes (uh... 57?).  Forwarded from an entirely unrelated list, 
 could we consider putting those facebook/twitter/linkedin like buttons on 
 the  racket-lang.org page?  Is this something we've already considered and 
 decided against?

 John


 Begin forwarded message:

 From: Robin ro...@ourstillwaters.org
 Date: September 7, 2011 10:10:41 PM PDT
 To: Clipperz clipp...@googlegroups.com
 Subject: [clipperz] Re: Marketing Ideas
 Reply-To: ro...@ourstillwaters.org

 Why not get a Facebook account and a Like button? Same for Twitter,
 Linked In, and the newest social/business networking sites.

 Also, have you advertised in any techy mags? Wired would be the
 obvious choice and probably well worth the cost, whatever it is. But
 secondary mags directed at IT types, Web developers, and programmers
 would at least get you some major exposure to the right group for
 subsequent word of mouth.

 Good luck guys!
 Robin

 On Sep 7, 12:54 am, Nate nate...@gmail.com wrote:
 Do you have any ideas on ways that the community can help market
 Clipperz?
 -- 
 You received this message because you are subscribed to the Google Groups 
 Clipperz group.
 To post to this group, send email to clipp...@googlegroups.com.
 To unsubscribe from this group, send email to 
 clipperz+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/clipperz?hl=en.



 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] Fwd: [clipperz] Re: Marketing Ideas

2011-09-09 Thread Jon Rafkind
On 09/09/2011 01:50 PM, Neil Van Dyke wrote:
 If you add Facebook buttons to racket-lang.org, I recommend *not* doing it 
 in the usual way, which is referencing JS/CSS/images/etc. from Facebook at 
 page
 load time.  That can actually silently track most people's 
 reading/viewing/posting/messaging behavior across most popular Web pages 
 these last few years,
 including their real-world identities.  (And don't for a second think that 
 Facebook doesn't really, really want to do that. :)


Supposedly theres no other way to do it

http://www.jwz.org/blog/2011/09/surprise-facebook-doesnt-like-privacy-countermeasures/
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] OT: ld static linking + linux version numbers - ??

2011-08-31 Thread Jon Rafkind
On 08/31/2011 05:53 PM, John Clements wrote:
 TOTALLY OFF-TOPIC, sorry:

 I have an autoconf script that's failing to detect a certain library, and 
 I've tracked it down to a failure of

 ld -lasound foo.c

 ..which tells me that it can't find -lasound.  Digging around in /usr/lib, I 
 see that there's a libasound.so.2, but not a libasound.so.  I just created a 
 symbolic link from libasound.so to libasound.so.2, and that seems to work, 
 but that *can't* be the general solution. Can it?

 Put differently: is there a way to specify a library version using an ld -l 
 flag?

AFAIK to get the .so file you are supposed to install the development versions 
of the library.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-08-16 Thread Jon Rafkind
What was the bug? :)

On 08/16/2011 10:43 AM, mfl...@racket-lang.org wrote:
 mflatt has updated `master' from d05f138ed2 to 311d55b5cf.
   http://git.racket-lang.org/plt/d05f138ed2..311d55b5cf

 =[ 1 Commits ]==

 Directory summary:
  100.0% src/racket/src/

 ~~

 311d55b Matthew Flatt mfl...@racket-lang.org 2011-08-16 10:27
 :
 | fix bug that affects `free-identifier=?'
 |
 | This bug is in the amazing that it lurked for years category,
 | as well as the stupid use of C preprocessor category.
 :
   M src/racket/src/syntax.c |5 +++--

 =[ Overall Diff ]===

 src/racket/src/syntax.c
 ~~~
 --- OLD/src/racket/src/syntax.c
 +++ NEW/src/racket/src/syntax.c
 @@ -365,7 +365,7 @@ XFORM_NONGCING static MZ_INLINE void 
 DO_WRAP_POS_INC(Wrap_Pos *w)
  #define WRAP_POS_INIT_END(w) (w.l = scheme_null, w.a = NULL, w.is_limb = 0, 
 w.pos = 0)
  #define WRAP_POS_END_P(w) SCHEME_NULLP(w.l)
  #define WRAP_POS_FIRST(w) w.a
 -#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb= 
 (w2).is_limb; w.pos = (w2).pos
 +#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb = 
 (w2).is_limb; w.pos = (w2).pos
  
  /* Walking backwards through one chunk: */
  
 @@ -3618,8 +3618,9 @@ static Scheme_Object *resolve_env(WRAP_POS *_wraps,
if (_wraps) {
  WRAP_POS_COPY(wraps, *_wraps);
  WRAP_POS_INC(wraps);
 -  } else
 +  } else {
  WRAP_POS_INIT(wraps, ((Scheme_Stx *)a)-wraps);
 +  }
  
while (1) {
  if (WRAP_POS_END_P(wraps)) {

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-08-16 Thread Jon Rafkind
Oh sorry, I meant how did the bug manifest itself in racket programs.

On 08/16/2011 11:02 AM, Jay McCarthy wrote:
 The C macro expanded into more than a single expression, but there was
 no {} after the else, so the latter expressions always ran.

 This is a great example :)

 Jay

 On Tue, Aug 16, 2011 at 11:00 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 What was the bug? :)

 On 08/16/2011 10:43 AM, mfl...@racket-lang.org wrote:
 mflatt has updated `master' from d05f138ed2 to 311d55b5cf.
   http://git.racket-lang.org/plt/d05f138ed2..311d55b5cf

 =[ 1 Commits ]==

 Directory summary:
  100.0% src/racket/src/

 ~~

 311d55b Matthew Flatt mfl...@racket-lang.org 2011-08-16 10:27
 :
 | fix bug that affects `free-identifier=?'
 |
 | This bug is in the amazing that it lurked for years category,
 | as well as the stupid use of C preprocessor category.
 :
   M src/racket/src/syntax.c |5 +++--

 =[ Overall Diff ]===

 src/racket/src/syntax.c
 ~~~
 --- OLD/src/racket/src/syntax.c
 +++ NEW/src/racket/src/syntax.c
 @@ -365,7 +365,7 @@ XFORM_NONGCING static MZ_INLINE void 
 DO_WRAP_POS_INC(Wrap_Pos *w)
  #define WRAP_POS_INIT_END(w) (w.l = scheme_null, w.a = NULL, w.is_limb = 
 0, w.pos = 0)
  #define WRAP_POS_END_P(w) SCHEME_NULLP(w.l)
  #define WRAP_POS_FIRST(w) w.a
 -#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb= 
 (w2).is_limb; w.pos = (w2).pos
 +#define WRAP_POS_COPY(w, w2) w.l = (w2).l; w.a = (w2).a; w.is_limb = 
 (w2).is_limb; w.pos = (w2).pos

  /* Walking backwards through one chunk: */

 @@ -3618,8 +3618,9 @@ static Scheme_Object *resolve_env(WRAP_POS *_wraps,
if (_wraps) {
  WRAP_POS_COPY(wraps, *_wraps);
  WRAP_POS_INC(wraps);
 -  } else
 +  } else {
  WRAP_POS_INIT(wraps, ((Scheme_Stx *)a)-wraps);
 +  }

while (1) {
  if (WRAP_POS_END_P(wraps)) {
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] DrDr Feature Request

2011-08-08 Thread Jon Rafkind
Another request: could DrDr process the latest push first? Its a little
annoying to get emails for tests that failed when the latest push fixes
them but DrDr is so far behind. Is there any benefit to testing all the
intermediate pushes?

On 08/08/2011 09:56 AM, Vincent St-Amour wrote:
 I love DrDr, but there's a small thing that annoys me about it.

 Some tests are prone to intermittent failures. For example, some
 benchmarks need to create a file, and several benchmarks share the
 same file, which leads to race conditions. Similarly, some DrRacket
 tests sometimes fail for focus reasons.

 So, whenever someone pushes, they may get failures from these tests,
 then have go look at the actual errors, and try to figure out if they
 actually broke something or not.

 (Or, they ignore these failures, which is bad.)

 Here are two potential solutions. Let's assume that I just pushed
 something, and a test started failing.

 - Have DrDr send me email for every push about the broken test for as
   long as it fails. If I get email more than once, it's likely that I
   actually broke something. If I only get email once, the problem went
   away on its own, and was likely an intermittent failure.

 - Have the possiblity to flag some tests as intermittent (something
   like `drdr:random'), and only report failures for these tests if
   they fail twice in a row. This would reduce the amount of noise,
   since I expect most of these tests to pass most of the time. Actual
   breakage would still be detected, since it's unlikely that such
   failures would go away on their own. Detection would happen one push
   late, but that shouldn't be too much of an issue.

   Or, maybe only notify the pusher after two failures in a row, but
   notify the responsible person right away.

 Any thoughts?

 Vincent
 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] DrDr Feature Request

2011-08-08 Thread Jon Rafkind
Could DrDr say This build is not the latest or The latest push is
234234?

On 08/08/2011 11:37 AM, Jay McCarthy wrote:
 It is useful to test all of them to find out when errors start. It
 doesn't do the newest first, because then the calculation of new
 issue wouldn't make any sense, because you wouldn't have the previous
 push's tests.

 Jay

 On Mon, Aug 8, 2011 at 11:34 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 Another request: could DrDr process the latest push first? Its a little
 annoying to get emails for tests that failed when the latest push fixes
 them but DrDr is so far behind. Is there any benefit to testing all the
 intermediate pushes?

 On 08/08/2011 09:56 AM, Vincent St-Amour wrote:
 I love DrDr, but there's a small thing that annoys me about it.

 Some tests are prone to intermittent failures. For example, some
 benchmarks need to create a file, and several benchmarks share the
 same file, which leads to race conditions. Similarly, some DrRacket
 tests sometimes fail for focus reasons.

 So, whenever someone pushes, they may get failures from these tests,
 then have go look at the actual errors, and try to figure out if they
 actually broke something or not.

 (Or, they ignore these failures, which is bad.)

 Here are two potential solutions. Let's assume that I just pushed
 something, and a test started failing.

 - Have DrDr send me email for every push about the broken test for as
   long as it fails. If I get email more than once, it's likely that I
   actually broke something. If I only get email once, the problem went
   away on its own, and was likely an intermittent failure.

 - Have the possiblity to flag some tests as intermittent (something
   like `drdr:random'), and only report failures for these tests if
   they fail twice in a row. This would reduce the amount of noise,
   since I expect most of these tests to pass most of the time. Actual
   breakage would still be detected, since it's unlikely that such
   failures would go away on their own. Detection would happen one push
   late, but that shouldn't be too much of an issue.

   Or, maybe only notify the pusher after two failures in a row, but
   notify the responsible person right away.

 Any thoughts?

 Vincent
 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] DrDr Feature Request

2011-08-08 Thread Jon Rafkind
I noticed this functionality just now.. thanks a lot!

On 08/08/2011 12:38 PM, Jay McCarthy wrote:
 Your wish is my command.

 On Mon, Aug 8, 2011 at 10:00 AM, Robby Findler
 ro...@eecs.northwestern.edu wrote:
 PS: I'm also happy if this class of tests only emails the responsible
 person, and not the pusher.

 Robby

 On Mon, Aug 8, 2011 at 10:59 AM, Robby Findler
 ro...@eecs.northwestern.edu wrote:
 I like the two-times-in-a-row thought.

 FWIW, please try to avoid race conditions of the second kind.

 I think the drracket test suites are special because they fail
 not-so-often and I don't actually know how to fix them.  If either of
 those weren't true then I'd say they should just not run in drdr. (So
 the race-condition/using the same file thing fails this test.)

 Robby

 On Mon, Aug 8, 2011 at 10:56 AM, Vincent St-Amour stamo...@ccs.neu.edu 
 wrote:
 I love DrDr, but there's a small thing that annoys me about it.

 Some tests are prone to intermittent failures. For example, some
 benchmarks need to create a file, and several benchmarks share the
 same file, which leads to race conditions. Similarly, some DrRacket
 tests sometimes fail for focus reasons.

 So, whenever someone pushes, they may get failures from these tests,
 then have go look at the actual errors, and try to figure out if they
 actually broke something or not.

 (Or, they ignore these failures, which is bad.)

 Here are two potential solutions. Let's assume that I just pushed
 something, and a test started failing.

 - Have DrDr send me email for every push about the broken test for as
  long as it fails. If I get email more than once, it's likely that I
  actually broke something. If I only get email once, the problem went
  away on its own, and was likely an intermittent failure.

 - Have the possiblity to flag some tests as intermittent (something
  like `drdr:random'), and only report failures for these tests if
  they fail twice in a row. This would reduce the amount of noise,
  since I expect most of these tests to pass most of the time. Actual
  breakage would still be detected, since it's unlikely that such
  failures would go away on their own. Detection would happen one push
  late, but that shouldn't be too much of an issue.

  Or, maybe only notify the pusher after two failures in a row, but
  notify the responsible person right away.

 Any thoughts?

 Vincent
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev



_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] 5.1.2 segfault during setup

2011-08-03 Thread Jon Rafkind
The launchpad build farm showed a segfault while it was building the PPA
package for 5.1.2.

https://launchpadlibrarian.net/76556662/buildlog_ubuntu-lucid-i386.racket_5.1.2-1_FAILEDTOBUILD.txt.gz

...
raco setup: re-rendering: scribblings/guide/guide.scrbl
Seg fault (internal error) at 0x69fbac3a
SIGSEGV SEGV_ACCERR SI_CODE 2 fault on 0x69fbac3a
Aborted

The amd64 builder did succeed, so I can probably just resubmit the
package and hope it works.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] cannot disable libffi

2011-07-28 Thread Jon Rafkind
I am trying to compile racket for a different architecture that libffi
is not ported to so I tried to use --disable-libffi but foreign/libffi
still gets configured. A) should that be happening and B) is there a way
around it?

$ ../configure --disable-libffi --host=x86
...
configure: error: libffi has not been ported to x86-unknown-none.
configure: error: ../../../foreign/libffi/configure failed for
foreign/libffi

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] cannot disable libffi

2011-07-28 Thread Jon Rafkind
Ah it was --disable-foreign.

--disable-libffi is to use the bundled ffi instead of the host one, or
something.

On 07/28/2011 11:42 AM, Jon Rafkind wrote:
 I am trying to compile racket for a different architecture that libffi
 is not ported to so I tried to use --disable-libffi but foreign/libffi
 still gets configured. A) should that be happening and B) is there a way
 around it?

 $ ../configure --disable-libffi --host=x86
 ...
 configure: error: libffi has not been ported to x86-unknown-none.
 configure: error: ../../../foreign/libffi/configure failed for
 foreign/libffi

 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-07-26 Thread Jon Rafkind
On 07/26/2011 10:57 AM, Eli Barzilay wrote:
 25 minutes ago, rafk...@racket-lang.org wrote:
 4e8e184 Jon Rafkind rafk...@racket-lang.org 2011-07-24 16:43
 :
 | add lexer for honu
 :
   A collects/honu/core/read.rkt
 Is the C code going away?


That is the hope.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Pre-Release Checklist for v5.1.2

2011-07-22 Thread Jon Rafkind

  * Jon Rafkind rafk...@cs.utah.edu
  
   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]
  

Done.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] interactive hack

2011-07-10 Thread Jon Rafkind
command-repl +1
crepl -1

On 07/10/2011 09:54 AM, Eli Barzilay wrote:
 It's no longer mine, and it's really been years since it was really a hack.

 I think that I'll go with a shortened command-repl: `crepl'.


 On 2011-07-10, Matthias Felleisen matth...@ccs.neu.edu wrote:
 how about ElisInteractiveHack


 On Jul 10, 2011, at 8:39 AM, Eli Barzilay wrote:

 10 minutes ago, Sam Tobin-Hochstadt wrote:
 Why not `interactive'?
 Interactive what?  -- It's way too generic.


 And this is for the name of the module, right?
 A new toplevel collection.  Used similarly to readline.  (And
 supersedes it, hopefully, for casual users.)

 --
  ((lambda (x) (x x)) (lambda (x) (x x)))  Eli Barzilay:
http://barzilay.org/   Maze is Life!
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev



_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] documentation reorganization

2011-07-01 Thread Jon Rafkind
I think the 'guide' and 'reference' links could use a description of
what they are similar to the tutorial links.

On 07/01/2011 06:45 PM, Ryan Culpepper wrote:
 I just pushed a commit intended to improve the usability of the main
 documentation page, especially for newcomers to Racket. You can also
 see the new version here:

   http://www.cs.utah.edu/~ryan/tmp/doc/

 If you have a manual in the trunk, I probably changed it
 slightly. Take a look at the changes. The rest of this message is
 about the rationale behind the reorganization.

 -- 

 Back in May, we heard from a newcomer to Racket who had gotten lost in
 the documentation and ended up going down the wrong path. His report
 sparked a discussion about, among other things, changing the
 documentation to make it more accessible to newcomers and
 visitors. While there are some gaps in the content of the
 documentation we have available, the primary problem seemed to be the
 organization; the newcomer didn't find the right manuals to read.

 The new documentation has four conceptual parts: Orientation, Racket,
 Teaching, and Everything Else.

 Orientation: The Getting Started link now stands alone; previously it
 was too easy to miss. The tutorials are now labeled as such in a
 separate section.

 Racket: The previous organization was too egalitarian. The Racket
 Reference was bare centimeters above the R6RS manual; R6RS is the
 standard, right?---guess I should start there! Core libraries were
 scattered throughout the documentation; you have to scroll to find the
 GUI manual.

 The new Racket Language and Core Libraries section makes it clear
 where the serious, comprehensive material about Racket starts. The
 core libraries are part reassurance (good, there's a standard GUI
 toolkit) and part advertisement (oh, there's a standard way of
 producing documentation).

 Teaching: The teaching materials are important enough to the Racket
 mission that they come next.

 Everything Else: There are a couple lesser improvements to the rest of
 the manuals.

 First, the old Languages section (again, overly egalitarian) is now
 much smaller, and its role is clarified. Racket is The Language; these
 are others... what does that mean? The link explains it.

 Second, I've done away with the @bold{X}: Y manual naming
 convention. In some cases this convention works, but in most cases it
 was a poor fit. @bold{Guide}: Racket is a bit inscrutable compared
 to The Racket Guide, and @bold{Version}: Racket Version Checking
 is grandiose for a manual that documents eight exports. The convention
 was confining, and it led to an arms race of bolding. If your manual
 didn't start with a bold keyword, it looked pitiful. I've changed
 major manuals to have names such as The Racket Guide, The Racket
 Drawing Toolkit, etc. I've renamed a few other manuals in that style,
 such as Web Applications in Racket (used to be Web: ...) and
 Extending DrRacket (used to be Plugins: ...). Use the unbolded
 X: Y pattern for manuals that are just the documentation for some
 collection; otherwise consider giving the manual a more descriptive
 name.

 -- 

 This is intended as a first step. In particular, I wanted to get the
 first three parts (Orientation, Racket, Teaching) in better shape in
 time for the upcoming release.

 Ryan
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] make-vector: out of memory making vector of length 0

2011-06-30 Thread Jon Rafkind
I just updated to HEAD and I see this error during 'make install'.

raco setup: making: compiler
raco setup: making: raco
make-vector: out of memory making vector of length 0
make-vector: out of memory making vector of length 0
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] current-load/use-compiled

2011-06-22 Thread Jon Rafkind
I'm trying to hook into the part of racket that loads files so I can
automatically create .zo files when they don't exist (and no, I don't
want to type raco make). Here is the code that loads the file and sets
up the handler (more explanation follows the code).

== load.rkt
(let ([namespace (make-base-namespace)])
  (define loader (current-load/use-compiled))
  (parameterize ([current-namespace namespace]
 [current-load/use-compiled
   (lambda (path something)
 (define-values (parent self _) (split-path path))
 (parameterize ([current-load-relative-directory
parent])
   (printf compile/load ~a ~a\n path something)
   (printf load directory ~a\n
(current-load-relative-directory))
   #;
   ((compile-zos #f #:module? #t) (list path)
compiled)
   (define load-path
 (if (is-zo? path)
   path
   (build-path parent compiled
(path-add-suffix self #.zo
   (printf Loading file ~a\n load-path)
   (loader load-path something)))])
(eval-syntax (with-syntax ([file test.rkt])
   #'(require file)

And here are the files being loaded
== test.rkt
#lang racket/base

(require test1.rkt)

(printf hello from test!\n)

== test1.rkt
#lang racket/base

(require (for-syntax racket/base))

(define-syntax (foo stx)
  (printf hello from foo macro\n)
  #'(void))

(foo)

#;
(begin-for-syntax
  (printf hello from phase1 code\n))

(printf test1!\n)

If I uncomment the 'begin-for-syntax' expression and run 'raco make' to
produce a .zo file then running 'racket test.rkt' won't display the
hello from phase1 code line. However if I run 'load.rkt' then no
matter if there is a .zo or not I see that printf being executed.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] guidelines on error messages -- please send feedback

2011-06-03 Thread Jon Rafkind
Somewhat offtopic but could the *SL languages use levenshtien distances
to find symbolically related variables? clang (a c++ compiler) does this
and I find it immensely useful.

foodar();
Error: `foodar' not found, did you mean 'foobar' ?

On 06/03/2011 11:21 AM, Shriram Krishnamurthi wrote:
 Guillaume, Kathi and I have created a set of guidelines for writing
 error messages for *SL.  For consistency, these guidelines need to be
 used also by authors of libraries including Teachpacks, etc.  These
 guidelines are currently being applied to all the error messages in
 *SL in the core distribution.

 Please review these guidelines and let us know if anything is
 unclear.  We'd like to hear back from you within a week, by

 Fri, June 10

 We have had to compromise on the description a little to make
 everything fit into a small number of pages, which we did because we
 really do hope people will print these out and put them on the wall or
 next to their monitor to refer to while writing code.  Therefore,
 lengthy descriptions are out.

 In particular, rationale is also out.  If you are curious about the
 rationales for any of these things, please do ask.

 After this is settled next week, we will send this to users@ and also
 to edu@ to tell instructors to follow these terms.

 Thanks,
 Shriram


 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] gtk too-small menu bar

2011-05-17 Thread Jon Rafkind
Fixed for me too, ubuntu 11.04 32bit, not using unity.

thanks a lot Robby!

On 05/17/2011 10:53 AM, Kevin Tew wrote:
 Its fixed for me now.

 Ubuntu 11.04 x86_64.

 Thanks.

 On 05/17/2011 10:04 AM, Robby Findler wrote:
 In consultation with Matthew, I've pushed a change that fixes the too
 small menu bar problem, at least on a VM on my laptop.

 If you're seeing this problem, can you check and see if the change
 fixes it for you too?

 Also, if someone could try it out on a unity setup, that'd be helpful.

 Thanks,
 Robby
 _
For list-related administrative tasks:
http://lists.racket-lang.org/listinfo/dev

 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] release blurb for 5.1.1

2011-04-26 Thread Jon Rafkind
Here are some suggested items for the 5.1.1 release announcement. Please
respond with any additions/deletions. The stuff in parentheses are short
git sha1's. Use 'git show 12ab345' to see the commit.

ryan:
  * new ffi/file module (..needs description..) (9bc3457bb)

matthew
  * Removed drscheme, mred, and mred.app although mred for unix still
exists (8d9e10f34e)
  * The installed version of libffi can be used instead of the
distributed version (f3c3bb4441c)
  * `touch' and `future' are safe functions to execute inside futures
(857003378 3bf0f800a76)
  * A new streams library compatible with `for' has been added to the
racket collection as `racket/stream' (e652546bf52)
  * list-box% now supports multi-column (137d96c08917)

eli
  * chrome is a supported browser in drracket (52ca08a8a9a)
  * All 3rd party copyrighted code has had their licenses clarified or
changed to be compatible with the LGPL (f6f7e4eb3502 a3d00a910afb)

robby
  * Added a widget to the status line of DrRacket that can toggle line
numbers (c4e0559db4ca37)
  * The module browser graph is rendered much faster. (e928bd840c02)
  * Added `overlay/align', `underlay/align', `overlay/align/offset' and
'underlay/align/offset' (c1668d894e210)

stephen
  * The stepper now supports lazy racket (da456f2e37e54)

kathy
  * Addition of `define-wish' to the teaching languages and
corresponding addition of support for wishes in test reports and
check-expects (7758f508c56)
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] narrow menus in 5.1

2011-04-26 Thread Jon Rafkind
A user from #scheme on irc said drracket in 5.1 shows narrow menus. His 
system is ubuntu 10.10, the language is Portuguese.


http://www.pasteall.org/pic/show.php?id=11565
_
 For list-related administrative tasks:
 http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] lots of new tests pushed

2011-04-25 Thread Jon Rafkind
On 04/25/2011 12:32 PM, Robby Findler wrote:
 I just pushed tests for all non-racket and non-scheme collections that
 makes sure that all of the top-level libraries have their exports
 fully documented. I left out info.rkt and tried to drop obviously bad
 things from this list, but if you spot problems when drdr complains at
 you, please just go edit the file to remove libraries that shouldn't
 be there.


Maybe a dumb question, but by 'documented' do you mean 'exported with a
contract' ? It doesn't look like the implementation is checking scribble..
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-04-21 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   Release tests for (one of the) linux releases:
   - Test that the `racket' and `racket-textual' source releases
 compile fine
   - 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]


The binary installers had problems with libffi.so.5. Source
distributions are still compiling. I used

plt-5.1.0.900-bin-i386-linux-ubuntu-jaunty.sh
mz-5.1.0.900-bin-i386-linux-ubuntu-jaunty.sh

My notes:
textual - failed in normal mode after install
   $ ./racket
   ./racket: error while loading shared libraries: libffi.so.5: cannot
open shared object file: No such file or directory

  failed in unix mode during install
  Unpacking into
/tmp/work/x/binary/textual-unix/racket-textual-tmp-install... done.
  racket-textual-tmp-install/bin/racket: error while loading shared
libraries: libffi.so.5: cannot open shared object file: No such file or
directory

  racket - failed in normal mode after install
$ ./racket
./racket: error while loading shared libraries: libffi.so.5: cannot
open shared object file: No such file or directory

  failed in unix mode during install
   Unpacking into /tmp/work/x/binary/racket-unix/racket-tmp-install...
done.
   racket-tmp-install/bin/racket: error while loading shared libraries:
libffi.so.5: cannot open shared object file: No such file or directory
   Error: installation failed
 (Removing installation files in
/tmp/work/x/binary/racket-unix/racket-tmp-install)

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-04-21 Thread Jon Rafkind
Source distributions compiled ok. The racket distribution no longer
produces a 'drscheme' executable even though it does produce 'mzscheme'.

Is that a mistake?

On 04/21/2011 11:50 AM, Jon Rafkind wrote:
 * Jon Rafkind rafk...@cs.utah.edu
   Release tests for (one of the) linux releases:
   - Test that the `racket' and `racket-textual' source releases
 compile fine
   - 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]

 The binary installers had problems with libffi.so.5. Source
 distributions are still compiling. I used

 plt-5.1.0.900-bin-i386-linux-ubuntu-jaunty.sh
 mz-5.1.0.900-bin-i386-linux-ubuntu-jaunty.sh

 My notes:
 textual - failed in normal mode after install
$ ./racket
./racket: error while loading shared libraries: libffi.so.5: cannot
 open shared object file: No such file or directory

   failed in unix mode during install
   Unpacking into
 /tmp/work/x/binary/textual-unix/racket-textual-tmp-install... done.
   racket-textual-tmp-install/bin/racket: error while loading shared
 libraries: libffi.so.5: cannot open shared object file: No such file or
 directory

   racket - failed in normal mode after install
 $ ./racket
 ./racket: error while loading shared libraries: libffi.so.5: cannot
 open shared object file: No such file or directory

   failed in unix mode during install
Unpacking into /tmp/work/x/binary/racket-unix/racket-tmp-install...
 done.
racket-tmp-install/bin/racket: error while loading shared libraries:
 libffi.so.5: cannot open shared object file: No such file or directory
Error: installation failed
  (Removing installation files in
 /tmp/work/x/binary/racket-unix/racket-tmp-install)

 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-04-19 Thread Jon Rafkind
It looks like places and futures have been combined into a single
'parallel' variable within configure, so does it make sense to have both
--enable-places and --enable-futures instead of --enable-parallel ?

On 04/19/2011 09:27 AM, t...@racket-lang.org wrote:
 tewk has updated `master' from 7389eef5b2 to 4fd6144e3d.
   http://git.racket-lang.org/plt/7389eef5b2..4fd6144e3d

 =[ 1 Commits ]==

 Directory summary:
   43.2% src/racket/
7.6% src/worksp/
   49.0% src/

 ~~

 4fd6144 Kevin Tew t...@racket-lang.org 2011-04-19 09:05
 :
 | [Places] place are now turned on by default
 :
   M src/configure   |   20 ++--
   M src/racket/configure.ac |   20 ++--
   M src/worksp/mzconfig.h   |2 +-

 =[ Overall Diff ]===

 src/configure
 ~
 --- OLD/src/configure
 +++ NEW/src/configure
 @@ -1327,7 +1327,7 @@ Optional Features:
--enable-jitcompile JIT support (enabled by default)
--enable-foreigncompile foreign support (enabled by default)
--enable-libffi use installed libffi (enabled by default)
 -  --enable-places compile places support
 +  --enable-places compile places support (usually enabled by default)
--enable-futurescompile futures support (usually enabled by 
 default)
--enable-cgcdefault use CGC (Boehm or Senora) as default build
--enable-sgcuse Senora GC instead of the Boehm GC
 @@ -2216,10 +2216,12 @@ show_explicitly_disabled ${enable_foreign} Foreign
  show_explicitly_disabled ${enable_libffi} Installed libffi
  
  show_explicitly_enabled ${enable_places} Places
 -show_explicitly_enabled ${enable_gc2_places_testing} GC2 Places Testing
 +show_explicitly_disabled ${enable_places} Places
  show_explicitly_enabled ${enable_futures} Futures
  show_explicitly_disabled ${enable_futures} Futures
  
 +show_explicitly_enabled ${enable_gc2_places_testing} GC2 Places Testing
 +
  show_explicitly_enabled ${enable_sgc} SGC
  show_explicitly_enabled ${enable_sgcdebug} SGC debug mode
  show_explicitly_enabled ${enable_compact} Compact 3m GC
 @@ -3907,7 +3909,7 @@ case $OS in
  case `$UNAME -m` in
#Required for CentOS 4.6
x86_64)
 -   enable_futures_by_default=yes
 +   enable_parallel_by_default=yes
 CGC_X86_64=1
 ;;
ppc)
 @@ -3917,7 +3919,7 @@ case $OS in
 EXTRA_GMP_DEP='$(EXTRA_GMP_DEP_FILE)'
 ;;
i386|i486|i586|i686)
 -   enable_futures_by_default=yes
 +   enable_parallel_by_default=yes
 ;;
*)
 ;;
 @@ -3979,7 +3981,7 @@ case $OS in
  
  case `$UNAME -m` in
i386|x86_64)
 -   enable_futures_by_default=yes
 +   enable_parallel_by_default=yes
 ;;
*)
 ;;
 @@ -8253,6 +8255,12 @@ fi
  
  ### places ###
  
 +if test ${enable_parallel_by_default} = yes ; then
 +  if test ${enable_places} =  ; then
 +enable_places=yes
 +  fi
 +fi
 +
  if test ${enable_places} = yes ; then
  
  cat confdefs.h \_ACEOF
 @@ -8264,7 +8272,7 @@ fi
  
  ### futures ###
  
 -if test ${enable_futures_by_default} = yes ; then
 +if test ${enable_parallel_by_default} = yes ; then
if test ${enable_futures} =  ; then
  enable_futures=yes
fi

 src/racket/configure.ac
 ~~~
 --- OLD/src/racket/configure.ac
 +++ NEW/src/racket/configure.ac
 @@ -38,7 +38,7 @@ AC_ARG_ENABLE(jit, [  --enable-jitcompile 
 JIT support (enabled b
  AC_ARG_ENABLE(foreign, [  --enable-foreigncompile foreign support 
 (enabled by default)], , enable_foreign=yes)
  AC_ARG_ENABLE(libffi,  [  --enable-libffi use installed libffi 
 (enabled by default)], , enable_libffi=yes)
  
 -AC_ARG_ENABLE(places,  [  --enable-places compile places support])
 +AC_ARG_ENABLE(places,  [  --enable-places compile places support 
 (usually enabled by default)])
  AC_ARG_ENABLE(futures, [  --enable-futurescompile futures support 
 (usually enabled by default)])
  
  AC_ARG_ENABLE(cgcdefault, [  --enable-cgcdefault use CGC (Boehm or 
 Senora) as default build])
 @@ -283,10 +283,12 @@ show_explicitly_disabled ${enable_foreign} Foreign
  show_explicitly_disabled ${enable_libffi} Installed libffi
  
  show_explicitly_enabled ${enable_places} Places
 -show_explicitly_enabled ${enable_gc2_places_testing} GC2 Places Testing
 +show_explicitly_disabled ${enable_places} Places
  show_explicitly_enabled ${enable_futures} Futures
  show_explicitly_disabled ${enable_futures} Futures
  
 +show_explicitly_enabled ${enable_gc2_places_testing} GC2 Places Testing
 +
  show_explicitly_enabled ${enable_sgc} SGC
  show_explicitly_enabled ${enable_sgcdebug} SGC debug mode
  show_explicitly_enabled ${enable_compact} Compact 3m GC
 @@ -540,7 +542,7 @@ case $OS in
  case 

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

2011-04-10 Thread Jon Rafkind
If I cilck on the line:column thing in the toolbar area next to the gc
icon it and select 'show line and column numbers' then the line:column
becomes hidden. If I then click in the same area to bring up the popup I
see that 'show line and column numbers' is still selected and clicking
it does not bring back the line:column display.

Also if line:column is being shown and I click 'show character offsets'
(which did not already have a checkmark next to it) then the line:column
goes away and I see 'show line and column numbers' without a checkmark
next to it (when before it did have one).

A further issue seems to be if the line:column display is hidden then
its not clear where to click to get it back. Not that I really care but
I don't see the problem with always displaying either line:column or
character offset (or maybe both).

On 04/10/2011 06:38 PM, ro...@racket-lang.org wrote:
 robby has updated `master' from 6b503fa947 to c4e0559db4.
   http://git.racket-lang.org/plt/6b503fa947..c4e0559db4

 =[ 3 Commits ]==

 Directory summary:
   17.2% collects/drracket/private/
   23.5% collects/framework/private/
   53.7% collects/scribblings/framework/
5.5% collects/string-constants/

 ~~

 2c2669b Robby Findler ro...@racket-lang.org 2011-04-10 17:43
 :
 | fix the handling of the drracket:show-line-numbers? preference
 |   so the line numbers change no matter who sets the preference
 :
   M collects/drracket/private/main.rkt |   10 +-
   M collects/drracket/private/unit.rkt |   14 +-

 ~~

 f3936ac8 Robby Findler ro...@racket-lang.org 2011-04-10 19:30
 :
 | correct capitolization for menu items
 :
   M collects/string-constants/english-string-constants.rkt |4 ++--

 ~~

 c4e0559 Robby Findler ro...@racket-lang.org 2011-04-10 19:35
 :
 | made the line/column thingy's popup menu be able to show the line numbers 
 in the definitions window
 |   - added add-line-number-menu-items
 |   - some minor fixes to the docs
 |   related to discussion in PR 11837
 :
   M collects/drracket/private/unit.rkt |   11 ++
   M collects/framework/private/frame.rkt   |   56 ---
   M collects/scribblings/framework/frame.scrbl |  117 
 ++---
   M collects/string-constants/english-string-constants.rkt |1 +

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] prefix-out

2011-03-16 Thread Jon Rafkind
Is there a good reason why `prefix-out' does not allow more than one
require-spec? Currently to attach a prefix to multiple identifiers you
must use `combine-out'

(provide (prefix-out foo: (combine-out x y))

Instead of

(provide (prefix-out foo: x y))

The issue was raised on IRC, so its not an immediate concern of mine.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2011-03-15 Thread Jon Rafkind
On 03/15/2011 08:16 PM, mfl...@racket-lang.org wrote:
 mflatt has updated `master' from 056a3fb588 to 0efcf22ed4.
   http://git.racket-lang.org/plt/056a3fb588..0efcf22ed4

 =[ 1 Commits ]==

 Directory summary:
   23.6% collects/racket/
   63.7% collects/scribblings/reference/
   12.5% collects/tests/racket/

 ~~

 0efcf22 Matthew Flatt mfl...@racket-lang.org 2011-03-15 20:09
 :
 | racket/generator: clean-ups, including planned generalization
 |  - syntax is now (generator formals body ...+)
 |  - add `generator?'
 |  - remove common run-time code from the `generator' macro expansion
 |  - doc fixes
 |  - start test suite
 :
   M collects/racket/generator.rkt  |   60 ++--
   M collects/scribblings/reference/sequences.scrbl |  173 
 -
   A collects/tests/racket/generator.rktl
   M collects/tests/racket/mzlib-tests.rktl |1 +

There are also some generator tests in collects/tests/racket/for.rktl.
Shall I move over to generator.rktl?
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] drafting the v5.1 release announcement

2011-02-09 Thread Jon Rafkind
Here are some items I pulled from the commit log

Robby:
823b6629aae7a1c668c2dffb2d89a16fc4a5889c
add an extra check to make sure drracket is more likely to startup
when things go wrong in strange ways
  Please merge to the 5.1 release branch
ce4bf97bde32032b0663c623d8ef1f2158a96fae
monitor the font size preference in order to redo the one-line size
computation for the search bar
  closes PR 11687
0411cddba53914a33af88d720fd4d05634aac016
added set/c and made sets print as set, seteq, or seteqv
  closes PR 11454
670d58d134eaf2dc5ed6ef4ea60f53d66321acda
added un/cache-image, a function that enables/disables the drawing
cache in 2htdp/image images
b77847904e4d05a731ca331c7d84e3532c980521
adjust the way the () colorer status thingy draws
2f009ca529fcbe4ebe496379a5403cbcf1a0cd14
changed the way equal% and snip% interact. Specifically:
   
 - snip% now implements equal%
   its equal-to? delegates to other-equal-to?.
   
 - snip%'s other-equal-to and equal-hash-code and
   equal-secondary-hash-code all just amount to using eq?. The
   setup is here just to make snip% be the one that declares
   that it implements equal% so that various snips can adjust
   other-equal-to? (and the hash code methods)
   
 - image-snip% no longer implements equal%
   (but it extends snip% and it overrides other-equal-to?
and the hash-code methods to do what they always did)
4917d2af4a680de5380f0b82ef13f82d216d7d76
added freeze to 2htdp/image
d1fe2766559133ba3913c5aef1f3f72c1a8be758
adjust the bug report form so that hitting return does not submit
the bug report
  as mentioned in PR 11551
0542d3ca7084579b1c209ee52e52edcc59a6ad53
added support for saving bug reports (for ease of offline submission)
also cleaned up a bunch of little things in the bug report
implementation:
 - the abort had race conditions
 - formatted the collections a little bit better (hopefully)
 - broke the implementation up into multiple files
 - fixed broken interaction with drracket (the drracket frame mixin
is now being used properly)
18dacad6c825e4fb18b37f1eae259d6c73419fc6
a first attempt at a rewording of the blame error messages to admit
the possibility that the contract was wrong and also to claim that
fixing the blamed module or the contract is all that is required
   
note that two test cases are failing, but only because they depend
on the wording of the error messages; once that is set, I'll fix them.
a63bbf82abb4b43b59d67ce9383c21b3ad1074ee
added current-trace-results

Matthew:
dfa36afa894ecc4a9626ecbe1ba36e4ff1f00a77
change `floating-point-bytes-real' to always produce a flonum
ff0a591b7beaadf68053b1f0beba2595a442aef0
change FFI `_float' to coerce to Racket double-precision flonum
3ef32d915ba6d07e5191aa980ba0a936e1970462
make inexacts `eqv?' only when precision is the same
 plus some other small fixes
b5bc288f676a81129ea93aaffeaebefa18831879
Windows: fix `path-list-string-path-list' to throw away quotes
 --- which seems to be what the command shell does with quotes in
 PATH, at least; Microsoft isn't in the habit of documenting this
 sort of thing
fb406390b7dbb44f8811d2ff07f058019c026715
fix readline port to obey port protocol  use interaction port handler
 --- in particular, it no longer blocks on a read request; the
 call to the readline library now uses a separate thread,
 so that the input port can return an event
069a7c2b4871477bf35a120b33ff5d7358e23a7c
add `current-get-interaction-input-port' and adjust `racket/gui'
 so that GUI events are dispatched while a REPL is blocked on input
b112fd76df4305b178a7e761fe0d29214a37c518
add `reparent' to `subwindow%'
98822cf1f989efd7c22f5d9587a65aeee29f26c0
adjust `racket/gui' and dependencies to survive a locked preference file
 - adds a `#:timeout-lock-there' argument to `get-preference'
 - fixes preference looup in `racket/gui'
 - make preference names consistently use `GRacket' and consistently
   fall back on `MrEd' names
 - fix Emacs-style undo mode while we're at it
d8e123753c40fadc6d51513cf1fa5e4eca614bc8
gtk: enable input-method (e.g., Chinese) support
79cd92859c9f6227abfd2a97ca0f3aa209d2c6eb
disable user-specific setup on `make install' by default
 and add a `--enable-userspecific' flag for `configure'
d6fc7da7501ff636ebf13639def6909aaa4feb47
add `refresh-now' to `canvas%'
 --- this method doesn't have to be built in, but it
 encapsulates a common and not-too-obvious pattern
13ddab969b7a071f3b0a532a19f579cdf6e2cb9a
enable ptherads by default for OpenBSD
55693e090f5f9686b286e69f1181565895194846
add `port-try-file-lock?' and `port-file-unlock'
7319b539f0fcef27637a507367e64bfce1808931
win64: initial CGC build
cc82d3728525b5bac3f2cb91d249d5404a7a3bd0
Scribble Latex image support (missed an earlier commit)

Re: [racket-dev] Pre-Release Checklist for v5.1, second call

2011-02-03 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   Release tests for (one of the) linux releases:
   - Test that the `racket' and `racket-textual' source releases
 compile fine
   - 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]


Done

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Pre-Release Checklist for v5.1

2011-02-02 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   Release tests for (one of the) linux releases:
   - Test that the `racket' and `racket-textual' source releases
 compile fine
   - 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]


Running the plt binary installer:
http://pre.racket-lang.org/release/installers/plt-5.0.99.900-bin-i386-linux-ubuntu-jaunty.sh

Checking the integrity of the binary archive... ok.
Unpacking into /tmp/work/x/plt/racket-tmp-install... done.
Cannot handle distribution of shared-libraries (yet)

 === context ===
/tmp/work/x/plt/racket-tmp-install/collects/setup/unixstyle-install.rkt:383:0:
move/copy-distribution
/tmp/work/x/plt/racket-tmp-install/collects/setup/unixstyle-install.rkt:
[running body]

Error: installation failed
  (Removing installation files in /tmp/work/x/plt/racket-tmp-install)

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Pre-Release Checklist for v5.1

2011-02-01 Thread Jon Rafkind

 * Jon Rafkind rafk...@cs.utah.edu
   Release tests for (one of the) linux releases:
   - Test that the `racket' and `racket-textual' source releases
 compile fine
   - 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]


Using mz-5.0.99.900-src-unix.tgz, configure error'd out
  config.status: error: cannot find input file: plot/Makefile.in

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] Pre-Release Checklist for v5.1

2011-01-31 Thread Jon Rafkind
On 01/31/2011 03:50 PM, Ryan Culpepper wrote:
 Checklist items for the v5.1 release
   (using the v5.0.99.900 release candidate build)

 Search for your name to find relevant items, reply when you finish an
 item (please indicate which item/s is/are done).  Also, if you have any
 commits that should have been picked, make sure that the changes are in.

 Important: new builds are created without announcement, usually whenever
 I pick a few commits.  If you need to commit changes, please make sure
 you tell me to pick it into the release branch.

 -- Release candidates are at
 --   http://pre.racket-lang.org/release/installers


This link is a 404.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] racket-lang down?

2011-01-19 Thread Jon Rafkind
its working for me. i just submitted a bug, too.

On 01/19/2011 04:44 PM, John Clements wrote:
 It looks like racket-lang.org is down. 

 John



 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] raco setup hangs

2011-01-13 Thread Jon Rafkind
thanks, it works now

On 01/13/2011 01:14 PM, Matthew Flatt wrote:
 This was a bug in the optimizer's tracking of inlining so that it tried
 to unroll `loop' forever. It's now fixed.

 At Mon, 10 Jan 2011 17:16:45 -0700, Jon Rafkind wrote:
 `raco setup' hangs when it tries to build my planet package. I narrowed
 down the problem to this file

 #lang racket/base

 (require racket/class)

 (define bar
   (mixin () ()
 (define (foo)
   (let loop ([x 0])
 (printf loop!\n)
 (loop (begin
 ;; uncomment for this to fail #;
 (send this anything)
 2))

 Put that in bar.rkt or whatever and add it as the main file of info.ss.
 If the line (send this anything) is uncommented then `raco setup' will
 hang. It dosen't print loop! or anything so its not obvious whats
 wrong. `raco make bar.rkt' works though.

 I'm not exactly sure when this behavior started occurring but it was
 something like 3 weeks ago.

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] sudo make install

2011-01-12 Thread Jon Rafkind
On 01/03/2011 02:11 PM, Matthew Flatt wrote:
 At Mon, 3 Jan 2011 14:55:05 -0500, Sam Tobin-Hochstadt wrote:
 On Mon, Jan 3, 2011 at 2:51 PM, Robby Findler
 ro...@eecs.northwestern.edu wrote:
 Or maybe there is another possible solution that involves changing how
 the distribution and or the docs build works?
 I think the conventional solution is for `make install' to do much
 less work than it current does.  In normal Make-built software,
 `make' does all of the compilation, and `make install' just does the
 copying.  That way, `make install' wouldn't be doing things like
 reading preferences and creating the '.racket' directory.
 Well, moving work from `make install' to `make' does nothing in itself.
 What you're suggesting is that we change what `make install' produces.

 In particular, I think you're suggesting that no user-specific actions
 take place as a result of a build and install. That change sounds ok to
 me, and it can be accomplished by passing `--no-user' to `raco setup'
 during `make install'.

 Unless anyone objects, I'll push that change soon.


Was this change pushed? I did a simple search but didn't find it.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] raco setup hangs

2011-01-10 Thread Jon Rafkind
`raco setup' hangs when it tries to build my planet package. I narrowed
down the problem to this file

#lang racket/base

(require racket/class)

(define bar
  (mixin () ()
(define (foo)
  (let loop ([x 0])
(printf loop!\n)
(loop (begin
;; uncomment for this to fail #;
(send this anything)
2))

Put that in bar.rkt or whatever and add it as the main file of info.ss.
If the line (send this anything) is uncommented then `raco setup' will
hang. It dosen't print loop! or anything so its not obvious whats
wrong. `raco make bar.rkt' works though.

I'm not exactly sure when this behavior started occurring but it was
something like 3 weeks ago.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] sudo make install

2011-01-03 Thread Jon Rafkind
On 01/03/2011 10:52 AM, Robby Findler wrote:
 On Mon, Jan 3, 2011 at 11:42 AM, Matthew Flatt mfl...@cs.utah.edu wrote:
 At Mon, 3 Jan 2011 11:39:28 -0600, Robby Findler wrote:
 I've changed the handin server so it puts its docs in the main tree
 like (I believe) it is supposed to.
 That breaks the distribution build. The handin-server docs were
 intentionally not installed into the main tree, because handin-server
 is not included in the distribution.
 So what the irc person was doing is just not supposed to work, I guess?

 I'd still like to find out what preference was getting set, so if Jon
 tries again, that'd be interesting to me.

As of commit

commit e6d45e2ae6804a73c9cea2a41d544c4a65b7a5d9
Author: Robby Findler ro...@racket-lang.org
Date:   Mon Jan 3 08:19:51 2011 -0600

a 'sudo make install' does not create the ~/.racket directory and things
install fine into /usr/local when --prefix=/usr/local is given to
`configure'
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] sudo make install

2011-01-03 Thread Jon Rafkind
Won't that make .racket be owned by root again when some preference file
gets written out during 'make install'?

On 01/03/2011 12:47 PM, Robby Findler wrote:
 Ah. So the problem was that root owned the .racket directory itself.

 Should I revert my commit?

 Robby

 On Mon, Jan 3, 2011 at 1:39 PM, Jon Rafkind rafk...@cs.utah.edu wrote:
 On 01/03/2011 10:52 AM, Robby Findler wrote:
 On Mon, Jan 3, 2011 at 11:42 AM, Matthew Flatt mfl...@cs.utah.edu wrote:
 At Mon, 3 Jan 2011 11:39:28 -0600, Robby Findler wrote:
 I've changed the handin server so it puts its docs in the main tree
 like (I believe) it is supposed to.
 That breaks the distribution build. The handin-server docs were
 intentionally not installed into the main tree, because handin-server
 is not included in the distribution.
 So what the irc person was doing is just not supposed to work, I guess?

 I'd still like to find out what preference was getting set, so if Jon
 tries again, that'd be interesting to me.
 As of commit

 commit e6d45e2ae6804a73c9cea2a41d544c4a65b7a5d9
 Author: Robby Findler ro...@racket-lang.org
 Date:   Mon Jan 3 08:19:51 2011 -0600

 a 'sudo make install' does not create the ~/.racket directory and things
 install fine into /usr/local when --prefix=/usr/local is given to
 `configure'


_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] sudo make install

2011-01-03 Thread Jon Rafkind
On 01/03/2011 12:55 PM, Sam Tobin-Hochstadt wrote:
 On Mon, Jan 3, 2011 at 2:51 PM, Robby Findler
 ro...@eecs.northwestern.edu wrote:
 Or maybe there is another possible solution that involves changing how
 the distribution and or the docs build works?
 I think the conventional solution is for `make install' to do much
 less work than it current does.  In normal Make-built software,
 `make' does all of the compilation, and `make install' just does the
 copying.  That way, `make install' wouldn't be doing things like
 reading preferences and creating the '.racket' directory.


Yea, I kind of feel like 'make' should build all the collects and docs
and whatnot. Unless there is a good reason not to.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] sudo make install

2010-12-31 Thread Jon Rafkind
A user on IRC complained about an issue where after building and
installing racket (with 'sudo make install') he received the following
error upon starting drracket:

Error saving preferences: open-output-file: cannot open output file:
~/.racket/.LOCKracket-prefs.rktd (Permission denied; errno=13)

Apparently some part of the installation process writes to ~/.racket and
since he used 'sudo' it was with root privileges. Its worth noting that
if you use 'su -c make install' things work because 'su -c' changes
$HOME to /root whereas sudo does not.

The user used 'sudo make install' because he passed
'--prefix=/usr/local' to configure and so expected things to install
there. I suppose this is a case of user error but its extremely subtle
so I wouldn't call it that.

Maybe during installation ~/.racket shouldn't be used, and /tmp/racket
could be used instead or something?
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] sudo make install

2010-12-31 Thread Jon Rafkind
I reproduced this. 'make install' was killed due to a memory shortage
but before it died it wrote out .racket. This happened somewhere while
the scribble files were being processed.

$ find .racket
.racket
.racket/5.0.99.6
.racket/5.0.99.6/doc
.racket/5.0.99.6/doc/handin-server
.racket/5.0.99.6/doc/handin-server/in.sxref
.racket/5.0.99.6/doc/handin-server/stamp.sxref
.racket/5.0.99.6/doc/handin-server/out.sxref

On 12/31/2010 02:44 PM, Jon Rafkind wrote:
 Well I'm not sure when he will pop into irc again but I'll try to
 reproduce this scenario.

 On 12/31/2010 02:43 PM, Robby Findler wrote:
 Probably whatever is writing to the preferences file should not be doing 
 that.

 If he could send along whatever is in the .racket/ directory (and
 owned by root) that would be useful.

 Robby

 On Fri, Dec 31, 2010 at 1:38 AM, Jon Rafkind rafk...@cs.utah.edu wrote:
 A user on IRC complained about an issue where after building and
 installing racket (with 'sudo make install') he received the following
 error upon starting drracket:

 Error saving preferences: open-output-file: cannot open output file:
 ~/.racket/.LOCKracket-prefs.rktd (Permission denied; errno=13)

 Apparently some part of the installation process writes to ~/.racket and
 since he used 'sudo' it was with root privileges. Its worth noting that
 if you use 'su -c make install' things work because 'su -c' changes
 $HOME to /root whereas sudo does not.

 The user used 'sudo make install' because he passed
 '--prefix=/usr/local' to configure and so expected things to install
 there. I suppose this is a case of user error but its extremely subtle
 so I wouldn't call it that.

 Maybe during installation ~/.racket shouldn't be used, and /tmp/racket
 could be used instead or something?
 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] spam planet bug reports

2010-12-11 Thread Jon Rafkind
FWIW, recaptcha is really easy to set up. Like less than 10 minutes from
not knowing anything about it to having a working system.

http://www.google.com/recaptcha

On 12/11/2010 07:33 AM, Robby Findler wrote:
 Some spam system figured out my low-tech anti-spam device for planet
 so I changed the regexp to insist that the version numbers begin with
 a 'v' (and I give less of a clue in the error message now).

 If this stops working soon, Ill probably just disable planet bug
 report submissions until I can find time to figure out how to make a
 captcha work.

 Sorry for the inconvenience.

 Robby
 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] full tree text search

2010-12-08 Thread Jon Rafkind
On 12/08/2010 10:12 PM, Eli Barzilay wrote:
 Is this different from a recursive grep?

 (See also `git grep' -- and there's a web interface for that,
 http://git.racket-lang.org//plt?a=searchh=HEADst=greps=foo )


Oh I had no idea git grep existed. Well that looks good enough for now.

(BTW, recursive grep on the command line is not so trivial..
$ find . -name *.rkt | xargs grep foo
)
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] full tree text search

2010-12-08 Thread Jon Rafkind
On 12/08/2010 11:46 PM, Noel Welsh wrote:
 Depending on how it is setup, it could be. There should be some
 processing to find words with similar meanings, for example. I expect
 your wife knows more :-)

 BTW,I think this is a really interesting and possibly useful thing to
 experiment with. Just storing the search logs on docs.racket-lang.org
 would provide a mine of useful information. Mining it is, of course,
 the issue.

 BTW BTW, Solr might provide a better user experience than straight
 Lucene. (Solr is the Lucene prepackaged.)


I attempted to set up solr a while ago but I couldn't figure it out.
Solr seems to suffer from having too many configuration files that all
need to be set up perfectly before you get any results. And so I had to
stick with plain Lucene.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] code base metrics

2010-12-01 Thread Jon Rafkind
And because I already started it, here is the entire collects tree (370k
file)

http://www.cs.utah.edu/~rafkind/tmp/racket-definitions.txt

On 11/29/2010 03:34 PM, Matthias Felleisen wrote:
 That makes sense. For now, I am fine with this very first-order 
 approximation. Thanks 


 On Nov 29, 2010, at 5:32 PM, Jon Rafkind wrote:

 There is one thing defined at phase 0, module-begin. The module exports
 a bunch of stuff

 (provide (rename-out [module-begin #%module-begin])
 (except-out (all-from-out scheme/base) #%module-begin)
 (all-from-out scheme/unit)
 (all-from-out scheme/contract)
 (for-syntax (all-from-out scheme/base)))

 I realize you probably wanted something like 'only count exports of
 things defined in the module' but thats a little harder to compute,
 which is why the metric is a first approximation.

 On 11/29/2010 03:29 PM, Matthias Felleisen wrote:
 Thanks, that's great. But what does this mean: 

 collects/racket/signature/lang.rkt defined 1 exported 2747

 -- Matthias




 On Nov 29, 2010, at 4:24 PM, Jon Rafkind wrote:

 On 11/29/2010 12:20 PM, Jon Rafkind wrote:
 I hacked my old tool to get a first approximation and ran it on all the
 files of the collects/racket tree. I can run it on the entire collects
 tree if you want, but its sort of slow so it will take a while. I
 couldn't expand all the files because local requires failed, I'll try to
 fix that.
 Here is a better list

 collects/racket/file.rkt defined 29 exported 18
 collects/racket/include.rkt defined 5 exported 4
 collects/racket/set.rkt defined 32 exported 26
 collects/racket/gui/info.rkt defined 3 exported 2
 collects/racket/gui/init.rkt defined 0 exported 3354
 collects/racket/gui/base.rkt defined 4 exported 209
 collects/racket/gui/lang/reader.rkt defined 6 exported 3
 collects/racket/gui/dynamic.rkt defined 5 exported 2
 collects/racket/gui/installer.rkt defined 1 exported 1
 collects/racket/match/define-forms.rkt defined 1 exported 1
 collects/racket/match/compiler.rkt defined 13 exported 1
 collects/racket/match/struct.rkt defined 1 exported 1
 collects/racket/match/runtime.rkt defined 11 exported 6
 collects/racket/match/gen-match.rkt defined 3 exported 2
 collects/racket/match/patterns.rkt defined 194 exported 163
 collects/racket/match/reorder.rkt defined 11 exported 1
 collects/racket/match/parse-legacy.rkt defined 1 exported 1
 collects/racket/match/parse.rkt defined 2 exported 1
 collects/racket/match/parse-helper.rkt defined 15 exported 11
 collects/racket/match/parse-quasi.rkt defined 3 exported 1
 collects/racket/match/legacy-match.rkt defined 11 exported 15
 collects/racket/match/match-expander.rkt defined 1 exported 1
 collects/racket/match/match.rkt defined 11 exported 16
 collects/racket/match/split-rows.rkt defined 2 exported 1
 collects/racket/system.rkt defined 0 exported 8
 collects/racket/control.rkt defined 0 exported 24
 collects/racket/package.rkt defined 10 exported 11
 collects/racket/runtime-path.rkt defined 2 exported 7
 collects/racket/tcp.rkt defined 1 exported 12
 collects/racket/runtime-config.rkt defined 1 exported 1
 collects/racket/init.rkt defined 0 exported 3206
 collects/racket/serialize.rkt defined 5 exported 12
 collects/racket/surrogate.rkt defined 1 exported 1
 collects/racket/cmdline.rkt defined 5 exported 2
 collects/racket/splicing.rkt defined 15 exported 11
 collects/racket/provide-syntax.rkt defined 1 exported 1
 collects/racket/require-transform.rkt defined 30 exported 22
 collects/racket/load/lang/reader.rkt defined 6 exported 3
 collects/racket/stream.rkt defined 19 exported 17
 collects/racket/contract/regions.rkt defined 5 exported 3
 collects/racket/contract/private/object.rkt defined 15 exported 6
 collects/racket/contract/private/arrow.rkt defined 104 exported 17
 collects/racket/contract/private/ds.rkt defined 45 exported 9
 collects/racket/contract/private/guts.rkt defined 95 exported 69
 collects/racket/contract/private/misc.rkt defined 121 exported 28
 collects/racket/contract/private/provide.rkt defined 4 exported 2
 collects/racket/contract/private/base.rkt defined 5 exported 3
 collects/racket/contract/private/hash.rkt defined 22 exported 1
 collects/racket/contract/private/vector.rkt defined 52 exported 4
 collects/racket/contract/private/helpers.rkt defined 12 exported 9
 collects/racket/contract/private/basic-opters.rkt defined 0 exported 0
 collects/racket/contract/private/arr-i.rkt defined 26 exported 1
 collects/racket/contract/private/opt-guts.rkt defined 40 exported 31
 collects/racket/contract/private/legacy.rkt defined 22 exported 18
 collects/racket/contract/private/arr-util.rkt defined 2 exported 2
 collects/racket/contract/private/box.rkt defined 26 exported 2
 collects/racket/contract/private/prop.rkt defined 72 exported 19
 collects/racket/contract/private/opt.rkt defined 20 exported 6
 collects/racket/contract/private/arr-i-old.rkt defined 22 exported 1
 collects/racket/contract/private/arr-i-parse.rkt defined 45

Re: [racket-dev] code base metrics

2010-12-01 Thread Jon Rafkind
Oh, there were some errors while running the script so to clean it up I
just did 'grep defined out' :p

/home/kazzmir/svn/plt/racket/collects/htdp/tests/guess-gui.rkt:10:3:
view: name is not defined, not a parameter, and not a primitive name in:
view


On 12/01/2010 08:40 PM, Matthias Felleisen wrote:
 Thanks. When I re-run my 'averaging' I get around 34% exports.  

 BTW, your script is broken. Look for view: name


_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] code base metrics

2010-11-29 Thread Jon Rafkind
I hacked my old tool to get a first approximation and ran it on all the
files of the collects/racket tree. I can run it on the entire collects
tree if you want, but its sort of slow so it will take a while. I
couldn't expand all the files because local requires failed, I'll try to
fix that.

collects/racket/file.rkt defined 29 exported 18
collects/racket/include.rkt defined 5 exported 4
collects/racket/set.rkt defined 32 exported 26
collects/racket/gui/info.rkt defined 3 exported 2
collects/racket/gui/base.rkt defined 4 exported 209
collects/racket/gui/lang/reader.rkt defined 6 exported 3
collects/racket/gui/dynamic.rkt defined 5 exported 2
collects/racket/gui/installer.rkt defined 1 exported 1
collects/racket/match/struct.rkt defined 1 exported 1
collects/racket/match/runtime.rkt defined 11 exported 6
collects/racket/match/patterns.rkt defined 194 exported 163
collects/racket/package.rkt defined 10 exported 11
collects/racket/runtime-path.rkt defined 2 exported 7
collects/racket/tcp.rkt defined 1 exported 12
collects/racket/runtime-config.rkt defined 1 exported 1
collects/racket/serialize.rkt defined 5 exported 12
collects/racket/surrogate.rkt defined 1 exported 1
collects/racket/cmdline.rkt defined 5 exported 2
collects/racket/splicing.rkt defined 15 exported 11
collects/racket/provide-syntax.rkt defined 1 exported 1
collects/racket/require-transform.rkt defined 30 exported 22
collects/racket/load/lang/reader.rkt defined 6 exported 3
collects/racket/stream.rkt defined 19 exported 17
collects/racket/contract/private/helpers.rkt defined 12 exported 9
collects/racket/contract/private/arr-util.rkt defined 2 exported 2
collects/racket/contract/private/blame.rkt defined 30 exported 18
collects/racket/draw/private/font-syms.rkt defined 3 exported 3
collects/racket/draw/private/libs.rkt defined 1 exported 1
collects/racket/draw/private/fmod.rkt defined 1 exported 1
collects/racket/draw/private/lzw.rkt defined 3 exported 1
collects/racket/draw/private/local.rkt defined 50 exported 25
collects/racket/draw/bmp.rkt defined 9 exported 1
collects/racket/draw/xpm.rkt defined 4 exported 1
collects/racket/draw/unsafe/bstr.rkt defined 1 exported 1
collects/racket/draw/xbm.rkt defined 3 exported 1
collects/racket/provide.rkt defined 2 exported 2
collects/racket/async-channel.rkt defined 32 exported 6
collects/racket/private/old-if.rkt defined 1 exported 1
collects/racket/private/sandbox-coverage.rkt defined 26 exported 1
collects/racket/private/serialize-structs.rkt defined 17 exported 17
collects/racket/private/lang/reader.rkt defined 6 exported 3
collects/racket/private/dict.rkt defined 96 exported 33
collects/racket/private/stx.rkt defined 19 exported 18
collects/racket/private/ellipses.rkt defined 2 exported 2
collects/racket/private/class-events.rkt defined 15 exported 10
collects/racket/private/portlines.rkt defined 3 exported 3
collects/racket/private/modbeg.rkt defined 3 exported 1
collects/racket/unit/lang/reader.rkt defined 6 exported 3
collects/racket/mpair.rkt defined 23 exported 20
collects/racket/trait.rkt defined 64 exported 9
collects/racket/fasl.rkt defined 2 exported 2
collects/racket/udp.rkt defined 1 exported 22
collects/racket/base/lang/reader.rkt defined 6 exported 3
collects/racket/function.rkt defined 5 exported 4
collects/racket/vector.rkt defined 26 exported 19
collects/racket/lang/reader.rkt defined 6 exported 3
collects/racket/require-syntax.rkt defined 1 exported 1
collects/racket/fixnum.rkt defined 6 exported 34
collects/racket/flonum.rkt defined 6 exported 42
collects/racket/local.rkt defined 1 exported 1
collects/racket/enter.rkt defined 16 exported 1
collects/racket/pretty.rkt defined 85 exported 25
collects/racket/port.rkt defined 17 exported 46
collects/racket/require.rkt defined 4 exported 4
collects/racket/dict.rkt defined 106 exported 37
collects/racket/path.rkt defined 11 exported 9
collects/racket/language-info.rkt defined 1 exported 1
collects/racket/block.rkt defined 1 exported 1
collects/racket/promise.rkt defined 44 exported 11
collects/racket/list.rkt defined 39 exported 35
collects/racket/stxparam-exptime.rkt defined 2 exported 2
collects/racket/bool.rkt defined 6 exported 5
collects/racket/trace.rkt defined 33 exported 8
collects/racket/signature/lang/reader.rkt defined 6 exported 3
collects/racket/place.rkt defined 1 exported 10
collects/racket/provide-transform.rkt defined 22 exported 14
collects/racket/math.rkt defined 8 exported 8
collects/racket/stxparam.rkt defined 2 exported 4
collects/racket/string.rkt defined 2 exported 2
collects/racket/sandbox.rkt defined 95 exported 43
collects/racket/match.rkt defined 1 exported 16
collects/racket/help.rkt defined 10 exported 3

On 11/27/2010 10:11 AM, Matthias Felleisen wrote:
 Could someone with one of these neat scripts please check out the following 
 question: 

 how many of the defined identifiers in a module are exported? 

 The question is really how much 'hiding' we do. Thanks -- Matthias

 p.s. I know that we can get at 

Re: [racket-dev] code base metrics

2010-11-29 Thread Jon Rafkind
There is one thing defined at phase 0, module-begin. The module exports
a bunch of stuff

(provide (rename-out [module-begin #%module-begin])
 (except-out (all-from-out scheme/base) #%module-begin)
 (all-from-out scheme/unit)
 (all-from-out scheme/contract)
 (for-syntax (all-from-out scheme/base)))

I realize you probably wanted something like 'only count exports of
things defined in the module' but thats a little harder to compute,
which is why the metric is a first approximation.

On 11/29/2010 03:29 PM, Matthias Felleisen wrote:
 Thanks, that's great. But what does this mean: 

  collects/racket/signature/lang.rkt defined 1 exported 2747

 -- Matthias




 On Nov 29, 2010, at 4:24 PM, Jon Rafkind wrote:

 On 11/29/2010 12:20 PM, Jon Rafkind wrote:
 I hacked my old tool to get a first approximation and ran it on all the
 files of the collects/racket tree. I can run it on the entire collects
 tree if you want, but its sort of slow so it will take a while. I
 couldn't expand all the files because local requires failed, I'll try to
 fix that.
 Here is a better list

 collects/racket/file.rkt defined 29 exported 18
 collects/racket/include.rkt defined 5 exported 4
 collects/racket/set.rkt defined 32 exported 26
 collects/racket/gui/info.rkt defined 3 exported 2
 collects/racket/gui/init.rkt defined 0 exported 3354
 collects/racket/gui/base.rkt defined 4 exported 209
 collects/racket/gui/lang/reader.rkt defined 6 exported 3
 collects/racket/gui/dynamic.rkt defined 5 exported 2
 collects/racket/gui/installer.rkt defined 1 exported 1
 collects/racket/match/define-forms.rkt defined 1 exported 1
 collects/racket/match/compiler.rkt defined 13 exported 1
 collects/racket/match/struct.rkt defined 1 exported 1
 collects/racket/match/runtime.rkt defined 11 exported 6
 collects/racket/match/gen-match.rkt defined 3 exported 2
 collects/racket/match/patterns.rkt defined 194 exported 163
 collects/racket/match/reorder.rkt defined 11 exported 1
 collects/racket/match/parse-legacy.rkt defined 1 exported 1
 collects/racket/match/parse.rkt defined 2 exported 1
 collects/racket/match/parse-helper.rkt defined 15 exported 11
 collects/racket/match/parse-quasi.rkt defined 3 exported 1
 collects/racket/match/legacy-match.rkt defined 11 exported 15
 collects/racket/match/match-expander.rkt defined 1 exported 1
 collects/racket/match/match.rkt defined 11 exported 16
 collects/racket/match/split-rows.rkt defined 2 exported 1
 collects/racket/system.rkt defined 0 exported 8
 collects/racket/control.rkt defined 0 exported 24
 collects/racket/package.rkt defined 10 exported 11
 collects/racket/runtime-path.rkt defined 2 exported 7
 collects/racket/tcp.rkt defined 1 exported 12
 collects/racket/runtime-config.rkt defined 1 exported 1
 collects/racket/init.rkt defined 0 exported 3206
 collects/racket/serialize.rkt defined 5 exported 12
 collects/racket/surrogate.rkt defined 1 exported 1
 collects/racket/cmdline.rkt defined 5 exported 2
 collects/racket/splicing.rkt defined 15 exported 11
 collects/racket/provide-syntax.rkt defined 1 exported 1
 collects/racket/require-transform.rkt defined 30 exported 22
 collects/racket/load/lang/reader.rkt defined 6 exported 3
 collects/racket/stream.rkt defined 19 exported 17
 collects/racket/contract/regions.rkt defined 5 exported 3
 collects/racket/contract/private/object.rkt defined 15 exported 6
 collects/racket/contract/private/arrow.rkt defined 104 exported 17
 collects/racket/contract/private/ds.rkt defined 45 exported 9
 collects/racket/contract/private/guts.rkt defined 95 exported 69
 collects/racket/contract/private/misc.rkt defined 121 exported 28
 collects/racket/contract/private/provide.rkt defined 4 exported 2
 collects/racket/contract/private/base.rkt defined 5 exported 3
 collects/racket/contract/private/hash.rkt defined 22 exported 1
 collects/racket/contract/private/vector.rkt defined 52 exported 4
 collects/racket/contract/private/helpers.rkt defined 12 exported 9
 collects/racket/contract/private/basic-opters.rkt defined 0 exported 0
 collects/racket/contract/private/arr-i.rkt defined 26 exported 1
 collects/racket/contract/private/opt-guts.rkt defined 40 exported 31
 collects/racket/contract/private/legacy.rkt defined 22 exported 18
 collects/racket/contract/private/arr-util.rkt defined 2 exported 2
 collects/racket/contract/private/box.rkt defined 26 exported 2
 collects/racket/contract/private/prop.rkt defined 72 exported 19
 collects/racket/contract/private/opt.rkt defined 20 exported 6
 collects/racket/contract/private/arr-i-old.rkt defined 22 exported 1
 collects/racket/contract/private/arr-i-parse.rkt defined 45 exported 32
 collects/racket/contract/private/blame.rkt defined 30 exported 18
 collects/racket/contract/private/ds-helpers.rkt defined 18 exported 10
 collects/racket/contract/base.rkt defined 0 exported 146
 collects/racket/contract/exists.rkt defined 16 exported 3
 collects/racket/draw/private/utils.rkt defined 3 exported 3

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

2010-11-16 Thread Jon Rafkind
On 11/16/2010 02:39 PM, Robby Findler wrote:
 I added (but have not pushed, apprently) queue-map. Mind if we keep
 that one instead?


Instead of what.. queue-list? I guess you can implement queue-list in
terms of queue-map as (queue-map values queue), but I'd rather not write
that in user code.

 Also, I think that a rename like the below is a bad idea if the queues
 have been released already.


I added queue-count yesterday or so, so its fairly fresh. (The rename
was not my idea)
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] proposed clarification to async-apply docs

2010-11-16 Thread Jon Rafkind
FWIW I agree with John and disagree with Jay.

On 11/16/2010 03:45 PM, Jay McCarthy wrote:
 The typesetting on async-apply clearly refers to the argument rather
 than to a well-known function. This is a convention of the docs that I
 don't think merits special attention here, although this case may
 indicate we should make a how to read the documentation section that
 points out these conventions.

 Jay

 On Tue, Nov 16, 2010 at 1:26 PM, John Clements
 cleme...@brinckerhoff.org wrote:
 My quick reading of the documentation for the #:async-apply argument to the 
 _fun form led to a misunderstanding; the docs seemed to be suggesting that 
 some built-in 'async-apply' procedure was doing all of these magical things, 
 whereas the point was to indicate that the *user* must provide an 
 async-apply that behaves correctly.  I wound up going through and replacing 
 'async-apply' with 'the given async-apply procedure' in about five places. I 
 think the text is clearer now; let me know if I shouldn't commit these 
 changes. Otherwise, I'll commit them locally and push them sometime soon.

 John



 pcp062767pcs:~/plt/collects/scribblings/foreign clements$ git diff 
 types.scrbl
 diff --git a/collects/scribblings/foreign/types.scrbl 
 b/collects/scribblings/foreign/types.scrbl
 index 9d753ac..233f48d 100644
 --- a/collects/scribblings/foreign/types.scrbl
 +++ b/collects/scribblings/foreign/types.scrbl
 @@ -401,19 +401,22 @@ procedure with the generated procedure type can be 
 applied in a
  foreign thread (i.e., an OS-level thread other than the one used to
  run Racket). The call in the foreign thread is transferred to the
  OS-level thread that runs Racket, but the Racket-level thread (in the
 -sense of @racket[thread]) is unspecified; the job of
 -...@scheme[async-apply] is to arrange for the callback procedure to be
 -run in a suitable Racket thread. The @scheme[async-apply] function is
 +sense of @racket[thread]) is unspecified; the job of the provided
 +...@scheme[async-apply] procedure is to arrange for the callback procedure 
 to be
 +run in a suitable Racket thread. The given @scheme[async-apply] procedure is
  applied to a thunk that encapsulates the specific callback invocation,
  and the foreign OS-level thread blocks until the thunk is called and
  completes; the thunk must be called exactly once, and the callback
 -invocation must return normally. The @scheme[async-apply] procedure
 +invocation must return normally. The given @scheme[async-apply] procedure
  itself is called in atomic mode (see @scheme[atomic?] above). If the
  callback is known to complete quickly, requires no synchronization,
  and works independent of the Racket thread in which it runs, then
 -...@scheme[async-apply] can apply the thunk directly. Otherwise,
 -...@racket[async-apply] must arrange for the thunk to be applied in a
 -suitable Racket thread sometime after @racket[async-apply] itself
 +it is safe for the given
 +...@scheme[async-apply] procedure to apply the thunk directly. Otherwise,
 +the given @racket[async-apply] procedure
 +must arrange for the thunk to be applied in a
 +suitable Racket thread sometime after the given
 +...@racket[async-apply] procedure itself
  returns; if the thunk raises an exception or synchronizes within an
  unsuitable Racket-level thread, it can deadlock or otherwise damage
  the Racket process. Foreign-thread detection to trigger
 pcp062767pcs:~/plt/collects/scribblings/foreign clements$


 _
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev




_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


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

2010-11-09 Thread Jon Rafkind
It occured to me while making this small patch that the name of the
macro shown in the error message might not be the same as the one the
user called. Namely, if the user renames or prefixes the macro when
requiring it then they will get a mismatch. This seems to be consistent
with how `raise-syntax-error' already works though so is it a big deal?

On 11/09/2010 05:26 PM, rafk...@racket-lang.org wrote:
 rafkind has updated `master' from 3936a40717 to 81eac261dc.
   http://git.racket-lang.org/plt/3936a40717..81eac261dc

 =[ 1 Commits ]==

 Directory summary:
  100.0% collects/racket/private/

 ~~

 81eac26 Jon Rafkind rafk...@racket-lang.org 2010-11-09 17:23
 :
 | better error message for define-syntax-rule
 :
   M collects/racket/private/misc.rkt |   22 --

 =[ Overall Diff ]===

 collects/racket/private/misc.rkt
 
 --- OLD/collects/racket/private/misc.rkt
 +++ NEW/collects/racket/private/misc.rkt
 @@ -12,18 +12,20 @@
(define-syntax define-syntax-rule
  (lambda (stx)
(syntax-case stx ()
 -[(dr (foo . pattern) template)
 - (identifier? #'foo)
 +[(dr (name . pattern) template)
 + (identifier? #'name)
   (syntax/loc stx
 -   (define-syntax foo
 - (lambda (x)
 -   (syntax-case** dr #t x () free-identifier=?
 -  [(_ . pattern) (syntax/loc x template)]]
 -[(dr (foo . pattern) template)
 - (raise-syntax-error 'define-syntax-rule expected an identifier 
 stx #'foo)]
 -[(dr (foo . pattern))
 +   (define-syntax name
 + (lambda (user)
 +   (syntax-case** dr #t user () free-identifier=?
 +  [(_ . pattern) (syntax/loc user template)]
 +  [else (raise-syntax-error 'name (format ~a 
 did not match pattern ~a (syntax-datum user) '(name . pattern)))]
 +  ]
 +[(dr (name . pattern) template)
 + (raise-syntax-error 'define-syntax-rule expected an identifier 
 stx #'name)]
 +[(dr (name . pattern))
   (raise-syntax-error 'define-syntax-rule no template provided stx)]
 -[(dr (foo . pattern) template . etc)
 +[(dr (name . pattern) template . etc)
   (raise-syntax-error 'define-syntax-rule too many templates stx 
 #'etc)]
  [(dr head . template)
   (raise-syntax-error 'define-syntax-rule invalid pattern stx 
 #'head)])))

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] for behavior with empty sequence

2010-11-07 Thread Jon Rafkind
Is this the right behavior for a `for' loop when no sequences are given?

- (for () (printf ok!\n))
ok!
- (for ([x (in-list (list))]) (printf ok!\n))
-

I would expect the body to occur 0 times.
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] adding preferences

2010-11-01 Thread Jon Rafkind
I currently have a preference to enabling/disabling line numbers in the
'view' menu which is easy to set up in drracket/collects/main.rkt. A
user asked me to add a checkbox they could select in
edit-preferences-general which I see is controlled by
framework/private/preferences.rkt but I can't seem to get a reference to
the definitions text from there. I suppose I can make the preference set
the 'drracket:show-line-numbers property but it would be nice if it
could dynamically update the line numbers, much like 'view-show line
numbers' currently does.

Is there a way to get to the definitions text in those callbacks?
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


Re: [racket-dev] adding preferences

2010-11-01 Thread Jon Rafkind
nevermind, I see preferences:add-to-general-checkbox-panel in
drracket/private/main.rkt

On 11/01/2010 10:27 PM, Jon Rafkind wrote:
 I currently have a preference to enabling/disabling line numbers in the
 'view' menu which is easy to set up in drracket/collects/main.rkt. A
 user asked me to add a checkbox they could select in
 edit-preferences-general which I see is controlled by
 framework/private/preferences.rkt but I can't seem to get a reference to
 the definitions text from there. I suppose I can make the preference set
 the 'drracket:show-line-numbers property but it would be nice if it
 could dynamically update the line numbers, much like 'view-show line
 numbers' currently does.

 Is there a way to get to the definitions text in those callbacks?
 _
   For list-related administrative tasks:
   http://lists.racket-lang.org/listinfo/dev

_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


[racket-dev] git history graph

2010-10-31 Thread Jon Rafkind
Here is a little graph of the git commit history

http://www.cs.utah.edu/~rafkind/tmp/x1/impact.png

Not really super impressive.. just something to do on a Sunday. The
python program that generated this graph is in the same directory as the
image (written by someone else). (Requires matplotlib = 0.99)
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


  1   2   >