<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<div>
<div>
<div style="font-family:Calibri,sans-serif; font-size:11pt">DLLs linked by import library at compile time (ie. not using LoadLibrary calls) and placed in the same directory as the .pyd should be exempt from DLL hell - Python already creates an activation context
 when importing pyds to let them load their own dependencies. Multiple CRTs are also okay as long as they don't try and share state (such as file descriptors) across boundaries.<br>
<br>
I do understand the lack of knowledge and experience though. I've helped out in the past but I personally don't have the bandwidth to contribute more, nor the persuasiveness to get someone else to.<br>
<br>
Top-posted from my Windows Phone</div>
</div>
<div dir="ltr">
<hr>
<span style="font-family:Calibri,sans-serif; font-size:11pt; font-weight:bold">From:
</span><span style="font-family:Calibri,sans-serif; font-size:11pt"><a href="mailto:sturla.molden@gmail.com">Sturla Molden</a></span><br>
<span style="font-family:Calibri,sans-serif; font-size:11pt; font-weight:bold">Sent:
</span><span style="font-family:Calibri,sans-serif; font-size:11pt">ý10/ý11/ý2014 9:59</span><br>
<span style="font-family:Calibri,sans-serif; font-size:11pt; font-weight:bold">To:
</span><span style="font-family:Calibri,sans-serif; font-size:11pt"><a href="mailto:python-dev@python.org">python-dev@python.org</a></span><br>
<span style="font-family:Calibri,sans-serif; font-size:11pt; font-weight:bold">Subject:
</span><span style="font-family:Calibri,sans-serif; font-size:11pt">Re: [Python-Dev] Status of C compilers for Python on Windows</span><br>
<br>
</div>
</div>
<font size="2"><span style="font-size:10pt;">
<div class="PlainText">Steve Dower <Steve.Dower@microsoft.com> wrote:<br>
<br>
> Is there some reason the Fortran part can't be separated out into a DLL? <br>
<br>
DLL hell, I assume. Using the Python extension module loader makes it less<br>
of a problem. If we stick with .pyd files where everything is statically<br>
linked we can rely on the Python dev team to make sure that DLL hell does<br>
not bite us. Most of the contributors to projects like NumPy and SciPy are<br>
not computer scientists. So the KISS principle is important, which is why<br>
scientific programmers often use Fortran in the first place. Making sure<br>
DLLs are resolved and loaded correctly, or using stuff like COM or .NET to<br>
mitigate DLL hell, is just in a different league. That is for computer<br>
engineers to take care of, but we are trained as physicists, matematicians,<br>
astronomers, chemists, biologists, or what ever... I am sure that engineers<br>
at Microsoft could do this correctly, but we are not the kind of guys you<br>
would hire :-)<br>
<br>
<br>
OT: Contrary to common belief, there is no speed advantage of using Fortran<br>
on a modern CPU, because the long pipeline and the hierarchical memory<br>
alleviates the problems with pointer aliasing. C code tends to run faster<br>
then Fortran, often 10 to 20 % faster, and C++ tends to be slightly faster<br>
than C. In 2014, Fortran is only used because it is easier to program for<br>
non-specialists. And besides, correctness is far more important than speed,<br>
which is why we prefer Python or MATLAB in the first place. If you ever see<br>
the argument that Fortran is used because of pointer aliasing, please feel<br>
free to ignore it.<br>
<br>
<br>
Sturla<br>
<br>
_______________________________________________<br>
Python-Dev mailing list<br>
Python-Dev@python.org<br>
<a href="https://mail.python.org/mailman/listinfo/python-dev">https://mail.python.org/mailman/listinfo/python-dev</a><br>
Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/steve.dower%40microsoft.com">
https://mail.python.org/mailman/options/python-dev/steve.dower%40microsoft.com</a><br>
</div>
</span></font>
</body>
</html>