Re: [racket-dev] teaching languages error message

2010-10-14 Thread Matthias Felleisen

My changes in response to pr11xyz. 

I ran the language test suite. I had no clue that language
changes can affect drrracket test suites. Sorry. 

Done. 


On Oct 14, 2010, at 9:48 AM, Robby Findler wrote:

 The teaching language error message wording changed slightly, breaking
 some of the drracket tests:
 
  http://drdr.racket-lang.org/21243/collects/tests/drracket/language-test.rkt
 
 Before I fix that, I just wanted to check and see if the changes are done.
 
 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


Re: [racket-dev] teaching languages error message

2010-10-14 Thread Robby Findler
No problem. That's what drdr is for! :)

But I'll go ahead and add you to the relevant test suites reporting.

You might want to try them out, just so you get a sense (they're
really testing the integration of the teaching langauges into
drracket, so the precise wording is incidnental; they're trying to
make sure they get a beginner error and not a full language error).

% cd plt/collects/tests/drracket
% gracket language-test.rkt
# don't touch the keyboard or mouse, and watch the show ...
# (according to drdr it will take at lest 9 minutes)

Robby

On Thu, Oct 14, 2010 at 9:58 AM, Matthias Felleisen
matth...@ccs.neu.edu wrote:

 My changes in response to pr11xyz.

 I ran the language test suite. I had no clue that language
 changes can affect drrracket test suites. Sorry.

 Done.


 On Oct 14, 2010, at 9:48 AM, Robby Findler wrote:

 The teaching language error message wording changed slightly, breaking
 some of the drracket tests:

  http://drdr.racket-lang.org/21243/collects/tests/drracket/language-test.rkt

 Before I fix that, I just wanted to check and see if the changes are done.

 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

Re: [racket-dev] teaching languages error message

2010-10-14 Thread Matthias Felleisen

On Oct 14, 2010, at 11:06 AM, Robby Findler wrote:

 No problem. That's what drdr is for! :)
 
 But I'll go ahead and add you to the relevant test suites reporting.
 
 You might want to try them out, just so you get a sense (they're
 really testing the integration of the teaching langauges into
 drracket, so the precise wording is incidnental; they're trying to
 make sure they get a beginner error and not a full language error).


In that case, the test might just be checking for the 
wrong property. Shouldn't we change this, especially for
precise wordings of error reports? (When Guillaume takes
over, we'll see even more of this.) 



 % cd plt/collects/tests/drracket
 % gracket language-test.rkt
 # don't touch the keyboard or mouse, and watch the show ...
 # (according to drdr it will take at lest 9 minutes)
 



(Thanks. I have run them before, but out of drscheme.) 







 Robby
 
 On Thu, Oct 14, 2010 at 9:58 AM, Matthias Felleisen
 matth...@ccs.neu.edu wrote:
 
 My changes in response to pr11xyz.
 
 I ran the language test suite. I had no clue that language
 changes can affect drrracket test suites. Sorry.
 
 Done.
 
 
 On Oct 14, 2010, at 9:48 AM, Robby Findler wrote:
 
 The teaching language error message wording changed slightly, breaking
 some of the drracket tests:
 
  http://drdr.racket-lang.org/21243/collects/tests/drracket/language-test.rkt
 
 Before I fix that, I just wanted to check and see if the changes are done.
 
 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


Re: [racket-dev] teaching languages error message

2010-10-14 Thread Matthias Felleisen


On Oct 14, 2010, at 2:35 PM, Robby Findler wrote:

 On Thu, Oct 14, 2010 at 1:33 PM, Matthias Felleisen
 matth...@ccs.neu.edu wrote:
 
 On Oct 14, 2010, at 11:06 AM, Robby Findler wrote:
 
 No problem. That's what drdr is for! :)
 
 But I'll go ahead and add you to the relevant test suites reporting.
 
 You might want to try them out, just so you get a sense (they're
 really testing the integration of the teaching langauges into
 drracket, so the precise wording is incidnental; they're trying to
 make sure they get a beginner error and not a full language error).
 
 
 In that case, the test might just be checking for the
 wrong property. Shouldn't we change this, especially for
 precise wordings of error reports? (When Guillaume takes
 over, we'll see even more of this.)
 
 The test should test that the error message is one that is supposed to
 come from the beginner language. I don't really see a better way to do
 that other than just to edit the messages when they change. (DrDr has
 made this process MUCH easier than it was before.)

Refactor the error message machinery into a separate file (like I did for the 
teachpacks) and use this single point for both raising and checking error 
messages. 

But I don't understand why drracket tests for error messages. When you know the 
right language is running can't you trust its tests? 

-- Matthias


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


[racket-dev] question about your change to run-teaching-languages.rkt

2010-10-14 Thread John Clements
Back on October 11, you made a change to run-teaching-languages.rkt that works 
absolutely fine with the stepper.

...but it breaks the stepper's testing harness. Ugh.  The problem, IIUC, is 
that the expansion of the teaching-language programs refer to a module, 
test-engine/racket-tests, that doesn't actually exist at 
plt/collects/test-engine, and is instead dynamically associated with the 
namespace by DrRacket before running the student program.  That is, IIUC. So, 
in order for the command-line racket tests to run correctly, they must also 
attach that module to the evaluation namespace.  Unfortunately, my ham-fisted 
attempt to add this to the test harness:

(namespace-attach-module outer-namespace 'test-engine/racket-tests 
(current-namespace))

... didn't work.  Actually, I was intrigued by the change.  It changed failures 
like this:

test-sequence: steps do not match
   given: #(struct:error-result require: namespace mismatch; reference (phase 
0) to a module \/Users/clements/plt/collects/test-engine/racket-tests.rkt\ 
that is not available (phase level 0))
expected: (before-after ((hilite (cond (true 3) (else (and true true) 
((hilite 3)))

... into errors like this:

test-sequence: steps do not match
   given: #(struct:error-result link: module mismatch, probably from old 
bytecode whose dependencies have changed: variable not provided (directly or 
indirectly) from module: 
\/Users/clements/plt/collects/test-engine/racket-tests.rkt\ accessed from 
module: 'stepper-module-name-18307 at source phase level: 0)
expected: (before-after ((if (hilite (if true false true)) false true)) ((if 
(hilite false) false true)))

I tried some light deleting of .zo files, but I strongly suspect that the real 
problem here is that somehow the version of test-engine/racket-tests attached 
to racket's default namespace--apparently it exists? or namespace-attach-module 
would give an error, right?--is different from the one attached to the teaching 
languages evaluation namespace.

I think the next step for me(after maybe a clean setup) is to start grepping 
through the drracket code for instances of test-engine/racket-tests, but if you 
can shed any light on the situation, I'm all ears.

Thanks!

John



smime.p7s
Description: S/MIME cryptographic signature
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] question about your change to run-teaching-languages.rkt

2010-10-14 Thread Robby Findler
I'm not sure, I'm sorry to say. What you write sounds like the right tack to me.

Robby

On Thu, Oct 14, 2010 at 4:02 PM, John Clements
cleme...@brinckerhoff.org wrote:
 Back on October 11, you made a change to run-teaching-languages.rkt that 
 works absolutely fine with the stepper.

 ...but it breaks the stepper's testing harness. Ugh.  The problem, IIUC, is 
 that the expansion of the teaching-language programs refer to a module, 
 test-engine/racket-tests, that doesn't actually exist at 
 plt/collects/test-engine, and is instead dynamically associated with the 
 namespace by DrRacket before running the student program.  That is, IIUC. So, 
 in order for the command-line racket tests to run correctly, they must also 
 attach that module to the evaluation namespace.  Unfortunately, my ham-fisted 
 attempt to add this to the test harness:

    (namespace-attach-module outer-namespace 'test-engine/racket-tests 
 (current-namespace))

 ... didn't work.  Actually, I was intrigued by the change.  It changed 
 failures like this:

 test-sequence: steps do not match
   given: #(struct:error-result require: namespace mismatch; reference (phase 
 0) to a module \/Users/clements/plt/collects/test-engine/racket-tests.rkt\ 
 that is not available (phase level 0))
 expected: (before-after ((hilite (cond (true 3) (else (and true true) 
 ((hilite 3)))

 ... into errors like this:

 test-sequence: steps do not match
   given: #(struct:error-result link: module mismatch, probably from old 
 bytecode whose dependencies have changed: variable not provided (directly or 
 indirectly) from module: 
 \/Users/clements/plt/collects/test-engine/racket-tests.rkt\ accessed from 
 module: 'stepper-module-name-18307 at source phase level: 0)
 expected: (before-after ((if (hilite (if true false true)) false true)) ((if 
 (hilite false) false true)))

 I tried some light deleting of .zo files, but I strongly suspect that the 
 real problem here is that somehow the version of test-engine/racket-tests 
 attached to racket's default namespace--apparently it exists? or 
 namespace-attach-module would give an error, right?--is different from the 
 one attached to the teaching languages evaluation namespace.

 I think the next step for me(after maybe a clean setup) is to start grepping 
 through the drracket code for instances of test-engine/racket-tests, but if 
 you can shed any light on the situation, I'm all ears.

 Thanks!

 John


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

[racket-dev] expected timing difference between fft-complex-forward and fft-complex-radix2-forward?

2010-10-14 Thread John Clements
On a vector of length 8192 (a power of 2, natch), fft-complex-radix2-forward 
takes about 1/8 of a second (lost in the noise, essentially), but 
fft-complex-forward takes more than 24 seconds, a difference of about 200x.  
They do produce the same answers, up to differences of 1e-4 in the magnitude 
(didn't check the phase).

1) Is this expected? I thought the non-radix2 one was still fairly clever about 
subdividing when the number of points is divisible by 2.
2) If so, would it make sense to test for powers of 2?

John Clements



smime.p7s
Description: S/MIME cryptographic signature
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Re: [racket-dev] teaching languages error message

2010-10-14 Thread Matthias Felleisen

I will factor out the error message generation for 2htdp/*sl. Perhaps I can 
combine it with htdp/error. 

You should then be able to simplify the drracket tests. 
_
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev