Path: csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!weretis.net!feeder1.news.weretis.net!news.albasani.net!.POSTED!not-for-mail From: Lars Enderin Newsgroups: comp.lang.c++,comp.lang.python,alt.usage.english,comp.lang.c Subject: Re: English Idiom in Unix: Directory Recursively Date: Sat, 21 May 2011 11:52:48 +0200 Organization: albasani.net Lines: 35 Message-ID: <4DD78B70.9090804@telia.com> References: <87aaekoab7.fsf@kuiper.lan.informatimago.com> <1228144c-303f-4c38-8ecb-8a7ad79fb3ab@s16g2000prf.googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: news.albasani.net aOPpuSjNvmT6NcpaBq6n3g/yX//R/EtwajiAq1ww1R8iY+TusNBg1F0j4zaMgI73Fvr7r6uPl2ArFwRFR8SlEeJZ7sI3/jpH+2xJ3maGVOPsfeEQaWO5ZIVEZXPU7Pqm NNTP-Posting-Date: Sat, 21 May 2011 09:53:14 +0000 (UTC) Injection-Info: news.albasani.net; logging-data="026czMvy70PVR9hAeaLRdqDAmiyvVmZ9Or3B7NtERVJLSrrpT7jq4izteayCEUIbAAsM/7MrJeNoQJsr14NzcgIzRmlqrih1d1inPDoNk74hYYRbAwcTy7N0n0qtUGpN"; mail-complaints-to="abuse@albasani.net" User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110424 Thunderbird/3.1.10 In-Reply-To: Cancel-Lock: sha1:bGF5krjuTj3BAYnvTV/yWR6Iwm4= Xref: x330-a1.tempe.blueboxinc.net comp.lang.c++:5251 comp.lang.python:5912 comp.lang.c:4489 2011-05-21 10:32, Jonathan de Boyne Pollard skrev: >> The supposed inefficiency of recursive implementations is based >> largely on the properties of hardware that is now obsolete. With >> modern processors there's no great efficiency hit. In some of the >> smaller microcontrollers, it's true, you do have to worry about stack >> overflow; but the ARM processors, for example, provide plenty of stack >> space. >> >> In the microcontroller world, the big performance hits come from the >> fact that the only available compilers are for C and sometimes C++. >> (And nobody uses assembly language except for the very little jobs.) >> The nature of the C language prevents compilers from doing >> optimisations that are standard in compilers for high-level languages. >> Most C compilers will, for example, always pass parameters on the >> stack, despite the generous supply of registers available in newer >> hardware. >> > However, some C compilers will *also* have one or more "go faster" > calling conventions that pass parameters in registers, which can be > employed. Over in the PC world, such "go faster" calling conventions > are even the default calling convention if no calling convention is > explicitly specified, for some C and C++ compilers. > > > http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/function-calling-conventions.html#Compiler > > > http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/function-calling-conventions.html#Optlink > > > http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/function-calling-conventions.html#Watcall > Please include attributions, in this case for Peter Moylan and rusi!