[Rd] Re: [R] further on ESS/XEmacs for Windows

John Fox jfox@mcmaster.ca
Wed Nov 27 14:06:15 2002


Dear Brian

At 07:43 AM 11/27/2002 +0000, ripley@stats.ox.ac.uk wrote:
>[Moved to R-devel, as this is going to get technical and is already a
>minority interest.]
>
>On 26 Nov 2002, A.J. Rossini wrote:
>
> > >>>>> "john" == John Fox <jfox@mcmaster.ca> writes:
> >
> >
> >     john> (2) I spent a good part of the day today trying XEmacs and 
> ESS on a
> >     john> variety of Windows systems -- with and without my configuration
> >     john> files. I noticed a number of intermittent problems with 
> GUI-related
> >     john> commands, such as attempts to open dialog boxes causing the R 
> process
> >     john> to freeze. I'll try to track down the source of these problems.
> >
> > I'm not sure what the status of these is -- I do know that some people
> > I trust have wondered how the heck R even works under (X)Emacs on
> > Windows (issues arising with systems interfacing, blocking calls, and
> > similar "stuff").
>
>That's right!  rterm used directly uses a separate thread for input to
>avoid it blocking (not processing Windows events) whilst waiting for
>input.  rterm used by ESS is effectively used in batch mode: it was never
>the intention that the GUI interactions should work.

Thanks for the explanation -- I figured that you'd know what's going on here.

>Guido and I once (in 2000) discussed a way out using a supervisor thread,
>and Guido implemented it (although I never saw the code),  He said it
>worked under NT but not Win98.  That's the real problem -- supporting
>low-end versions of Windows which do not behave as documented, when the
>developers (then) were only using NT/2000.  On Unix one uses select() and
>since we have since made that work to support url/socket connections it
>would be possible to try to use that.  However, it would be a lot of work
>to provide something that the main developers would never use, and we
>remain desperately short of contributions by users of R on Windows.

If I had the knowledge to make this kind of contribution, I'd volunteer to 
do it. I expect that this is generally the source of the problem: that is, 
Windows users probably tend to have a lower level of programming expertise.

If Guido's code still exists, would it be possible to incorporate it, 
providing a solution for Windows NT, 2000, and XP? Applications such as 
mine could adapt their behaviour depending upon the Windows version (and 
eventually Windows 9x systems will disappear).

Thanks again,
  John
-----------------------------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario, Canada L8S 4M4
email: jfox@mcmaster.ca
phone: 905-525-9140x23604
web: www.socsci.mcmaster.ca/jfox
-----------------------------------------------------