Abstract
For many years, Unix has been the platform of choice for the development and
execution of large scientific programs. The new Microsoft .NET Framework
represents a major advance over previous runtime environments available in
Windows platforms, and offers a number of architectural features that would be
of value in scientific programs. However, there are such major differences
between Unix and .NET under Windows, that the effort of migrating software is
substantial. Accordingly, unless tools are developed for supporting this
process, software migration is unlikely to occur. In this paper we discuss a
'relative debugger' called Guard, which provides powerful support for debugging
programs as they are ported from one platform to another. We describe a
prototype implementation developed for Microsoft's Visual Studio.NET, a rich
interactive environment that supports code development for the .NET Framework.
The paper discusses the overall architecture of Guard under VS.NET, and
highlights some of the technical challenges that were encountered.