<br><br><div class="gmail_quote">On Fri, Feb 26, 2010 at 8:06 AM, Robert Kern <span dir="ltr">&lt;<a href="mailto:robert.kern@gmail.com">robert.kern@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Fri, Feb 26, 2010 at 04:42, David Cournapeau &lt;<a href="mailto:david@silveregg.co.jp">david@silveregg.co.jp</a>&gt; wrote:<br>
<br>
&gt; I don&#39;t really know the assumptions made by f2py otherwise: is it<br>
&gt; prevalent for most fortran compilers to pass most things by reference ?<br>
<br>
</div>I think that&#39;s part of the standardized semantics, yes. That said,<br>
some things in the C API like how to pass the length of a character<br>
string are not standardized and are sometimes passed by value.<br>
<div class="im"><br></div></blockquote><div><br>Old Fortran didn&#39;t use stacks, all the data was collected into a section of memory and the subroutine referenced that memory location; think of it as an anonymous common. The addition of stack variables and the possibility of recursion was an innovation and originally required a special declaration that the variable was local, i.e., on a stack. I don&#39;t know how modern Fortran is implemented but using references has a long tradition in the language.<br>
<br>Chuck <br></div><br></div>