[racket] Program works OK in DrRacket, not as an executable

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Sun Jul 15 20:16:16 EDT 2012

Thanks. I believe this is the same as the test suite failure we're
seeing in DrDr:

http://drdr.racket-lang.org/24901/collects/tests/drracket/teaching-lang-executable-creation.rkt

so we're aware of the problem and hope to have fix before the next release.

Robby

On Sun, Jul 15, 2012 at 1:19 PM, Jussi Salmela <mimmottos at gmail.com> wrote:
> Versions: Win 7 & Racket 5.3.0.13--2012-07-05(467bde3/a)
>
> I have a program starting like this:
>
> #lang racket/gui
>
> (require 2htdp/batch-io)
> (require racket/mpair)
> (require srfi/13)
>
> ;;; Jussi Salmela, http://www.saunalahti.fi/jussalme
> ;;;
> ;;; This program produces graphs for blood pressure monitor (==> bpm)
> ;;;  data. The data (in CSV format) has been downloaded from a
> ;;; blood pressure measurement device, model OMRON M10-IT.
> ;;;
>
> It reads a CSV formatted file containing diastolic and systolic BP values
> amongst other data. It creates a GUI window drawing a chart of the d/s
> value lines for
> every date/line. When a button is clicked in the window the program creates
> a PDF file and shows it in Adobe Reader using shell-execute.
>
> Everything fine and dandy when run in DrRacket but not when I create
> an executable. I create the executable with the middle selection ie.
>  "a standalone exe for this computer". When I run the resulting exe I get:
>
> standard-module-name-resolver: collection not found
>   collection: "lang/private"
>   in collection directories:
>   context...:
>    standard-module-name-resolver
>    #%embedded:g10080:htdp-beginner: [traversing imports]
>    #%embedded:g10047:prim: [traversing imports]
>    #%embedded:g9942:batch-io: [traversing imports]
>    bpm-graph-printer: [traversing imports]
>    loop
>
> [Exited. Close box or Ctrl-C closes the console.]
>
> What follows reminds me of my teaching assistant times looong ago:
> people came to see me with their card decks and program listings
> claiming that they had not changed anything, the program just had
> mysteriously stopped working!
>
> When subjected to the third degree they admitted to having edited a line or two
> and changing the order of a few lines but insisted that surely that can't be
> the cause of the changed behavior.
>
> But I am going to stick to my claim: this used to work earlier and
> I have not changed anything. What this means is that I created an
> exe in February of 2011 and used it successfully in March, September,
> and March 2012 again.
>
> I don't remember what version of Racket I used and I don't have
> it on my computer any more, so I get an error of a missing DLL when
> I try to start the old exe.
>
> I use the read-lines function from batch-io and this trouble
> obviously has something to do with that.
>
> Either my program is incorrect and DrRacket is  too kind in not turning me down
> when running it or there's something funny going on in the exe creation.
>
> Jussi
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users

Posted on the users mailing list.