Yes but then my question is, is the defined behavior to display tests that are being run in a different tab in the current tab's repl? I understand this kind of behavior when file A imports B and B's last expression is say 3, then running A will print 3 in A's repl if the require is the only expression in A, but this potential bug is the other way around. Why would B importing A display things in *A's* window when running A?

On 06/22/2013 03:40 PM, Robby Findler wrote:
The requires depend on what is in the filesystem, not what is in the editor. Does that explain what you are seeing, perhaps?

Robby


On Sat, Jun 22, 2013 at 2:38 PM, Sean Kanaley <skana...@gmail.com <mailto:skana...@gmail.com>> wrote:

    I've got it this time:

    The test file with the module+ must be required by another, not
    even necessarily saved file (untitled # is fine).  It seems the
    tests are being run therefore in the *other* file, yet displayed
    in the current file's repl.

    e.g.

    in a.rkt:

    #lang racket

    (module+ test
      (write "?"))

    save, then open new tab

    #lang racket
    (require "a.rkt")

    go back to a.rkt, comment out, and it will print.  It may or may
    not print after depending on exactly which order of
    save/ctrl+r/commenting/etc. and I'm not sure what happens in general.


    On 06/22/2013 03:30 PM, Robby Findler wrote:
    Oh, maybe memory got corrupted somehow earlier along the line.

    Just in case it is relevant: DrRacket tries hard to protect
    itself against buggy user programs, but it cannot do that when
    #%foreign is being used (unsafely).

    Robby



    On Sat, Jun 22, 2013 at 2:25 PM, Sean Kanaley <skana...@gmail.com
    <mailto:skana...@gmail.com>> wrote:

        I myself can no longer reproduce it after closing and
        reopening DrRacket.  By coincidence, before closing it, the
        menus stopped working and I got a Ubuntu error of some sort
        as well.  I shall keep trying for a bit.


        On 06/22/2013 03:12 PM, Robby Findler wrote:
        I'm not seeing that behavior (that is a bug, tho). I tried
        these steps:

        1) cmd-t to create a new tab in DrRacket.
        2) paste the expression above (there is an automatic "#lang
        racket" inserted).
        3) save the file.
        4) delete the above expression
        5) hit run.

        No output observed.

        Were you doing something differently?

        Robby


        On Sat, Jun 22, 2013 at 2:02 PM, Sean Kanaley
        <skana...@gmail.com <mailto:skana...@gmail.com>> wrote:

            I don't use modules very much, so this could be the
            defined behavior similar to how the ffi module
            "secretly" (it's actually documented) doesn't reload
            foreign libraries unless DrRacket is restarted, but I
            didn't notice anything in the documentation.  How to
            reproduce:

            (module+ test
              (write "?"))

            Without even running it, save the file, then delete that
            expression.  Now run it (as in ctrl+r), and it will
            write "?".
            ____________________
             Racket Users list:
            http://lists.racket-lang.org/users







____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to