[plt-scheme] bugs in DivaScheme 1.3

From: Benjamin L.Russell (DekuDekuplex at Yahoo.com)
Date: Tue Jun 2 04:25:47 EDT 2009

I've been trying to use DivaScheme 1.3 (see
http://www.cs.brown.edu/research/plt/software/divascheme/) on Windows
XP Professional, Service Pack 3, to enter the factorial function in
DrScheme 4.2, but so far, I have encountered the following (rather
frustrating) bugs:

1. Every time that I switch tabs in Windows from DrScheme to Firefox
and back using ALT + TAB, DivaScheme mysteriously switches from
insertion mode to command mode.

2. When editing a s-expression, if I make a mistake and backtrack,
often a command prompt window suddenly appears and won't go away.  For
example, I tried typing the following in DivaScheme:

>(define (factorial 

Then I wanted to do something else, so I backspaced back to the
opening parenthesis immediately before the "factorial" identifier, and
when I tried typing another opening parenthesis (by hitting the
open-bracket key), suddenly a command prompt window entitled
"DrScheme" and a Windows dialog box entitled "DrScheme Internal Error"

The command prompt window contained the following text:

>(file "C:\\Documents and Settings\\Benjamin\\Application Data\\PLT Scheme\\planet\\300\\4.2\\cache\\divascheme\\divascheme.plt\\1\\6\\insert-keymap.ss") broke the contract
>  (->
>   (is-a?/c class:text%)
>   natural-number/c
>   natural-number/c
>   rope?)
> on read-subrope-in-text; expected <natural-number/c>, given: -2
> === context ===
>C:\bin\PLT-4.2\collects\scheme\private\contract-guts.ss:220:0: raise-contract-error
>C:\Documents and Settings\Benjamin\Application Data\PLT Scheme\planet\300\4.2\cache\divascheme\divascheme.plt\1\6\insert-keymap.ss:322:4: eval-text
>C:\Documents and Settings\Benjamin\Application Data\PLT Scheme\planet\300\4.2\cache\divascheme\divascheme.plt\1\6\insert-keymap.ss:350:4: eval-text&cmd
>C:\bin\PLT-4.2\collects\scheme\private\map.ss:44:11: for-each
>C:\bin\PLT-4.2\collects\scheme\private\map.ss:44:11: for-each
>C:\bin\PLT-4.2\collects\mred\private\wxme\keymap.ss:485:2: chain-handle-key-event method in keymap%for-loop
>C:\bin\PLT-4.2\collects\mred\private\wxme\keymap.ss:485:2: chain-handle-key-event method in keymap%
>C:\bin\PLT-4.2\collects\mred\private\wxme\keymap.ss:441:2: handle-key-event method in keymap%
>C:\bin\PLT-4.2\collects\mred\private\wxme\editor.ss:211:2: on-local-char method
>in editor%
>C:\bin\PLT-4.2\collects\mred\private\wxme\editor-canvas.ss:431:2: on-char method
> in editor-canvas%
>C:\bin\PLT-4.2\collects\scheme\private\more-scheme.ss:155:2: call-with-break-parameterization
>C:\bin\PLT-4.2\collects\scheme\private\more-scheme.ss:271:2: call-with-exception-handler

The Windows dialog box contained identical text.

When I then clicked on the "OK" button below the Windows dialog box,
that Windows dialog box disappeared.  However, the command prompt
window remained, so I then entered "Ctrl-c" in that window.

Then, a new Windows dialog box, entitled "DrS..." (it was very short
and had a very short title) appeared, with the contents "user break"
appearing on the dialog box.  When I clicked on the "OK" button for
this new dialog box, that window diappeared, and the following message
became appended to the previous contents of the command prompt window:

>user break
>[Exited. Close box or Ctrl-C closes the console.]

When I then entered "Ctrl-c" in that window, that window disappeared,
and DrScheme also completely disappeared along with it.

I cannot work effectively if DrScheme suddenly crashes when the
command prompt window that appears when this type of error occurs is
closed.  DivaScheme seems to be an interesting editor, but it is hard
to work effectively unless this bug is fixed.

-- Benjamin L. Russell
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

Posted on the users mailing list.