[M3devel] inaccuracy of NT386 and Win32 names?

Olaf Wagner wagner at elegosoft.com
Wed Jan 3 16:10:18 CET 2007


On Sun, December 31, 2006 2:22 pm, j k wrote:
> <html><div style='background-color:'><P>Does anyone care that neither "NT386"
> nor "Win32" are accurate names?</P>
> <P>Historically and probably currently the NT386 target supported Windows
> 95/98, which are not NT.</P>
> <P>Lately support for older processors like 386 is going away. The current
> operating systems don't support 386 nor likely do the current
> compilers.<BR> Granted as long as the compiler supported it, you could
> produce binaries that'd run on old OSes that did support 386.<BR> And the
> C++ compiler has fairly little bearing here, and probably the linker too.</P>
> <P>Most "Win32" code also works asis on Win64, so just calling it "Windows"
> usually or "Windows-x86" sometimes would seem right, maybe "Win" or "Winx86"
> for short.</P>
> <P>I assume there's really no value in renaming NT386, and that "Win32" could
> just be somewhat sleazily considered to also mean Win64.<BR>Most other
> hypothetical Windows targets could rightfully include NT in their name,
> NTMIPS, NTALPHA, NTPOWERPC, NTIA64, NTAMD64, etc.<BR>Things like CE, or heck,
> Xbox, would likely be different targets distinct from NT.</P>
> <P>(It has always bugged me how people claim Microsoft is kind of the opposite
> of portability when in fact the portability of NT has been very well
> demonstrated, but that then hardly any producer of Windows software followed
> suit (including Microsoft -- Office))</P>
> <P>I had to at least ask. :)</P>
> <P>I also wonder if Modula-3 even needs both of these identifiers, they map
> one to one currently, right? Maybe this was acknowledgement of the possibility
> of NTMIPS, NTALPHA, NTPOWERPC, etc?</P>

WIN32 should encapsulate all code that is specific to the 32 bit
development and runtime environment of Windows. Historically it also
distinguished code from 16 bit Microsoft environments IIRC. I expect we
will also need a WIN64 code set soon.

NT386 was supposed to run on Windows 95/98/NT, and later 2000 and XP, on
the Intel processor architecture. It is certainly a misnomer wrt.
the 3 in its name, but so have been lots of other identifiers, too.
There has also been a NT386GNU target which used the Cygwin POSIX
emulation environment running on Windows.

There have never been any other supported hardware architectures for NT/2000/...
as far as I know, but then, there has been no software support at all for
these, even by Microsoft...

A more consistent naming scheme for M3 targets may be interesting for
new target platforms, but I wouldn't change any existing names for
reasons of backward compatibility and effort.

Olaf
-- 
Olaf Wagner
elego Software Solutions GmbH, Berlin, Germany



More information about the M3devel mailing list