Re: Functional programming?
- To: mathgroup at smc.vnet.net
- Subject: [mg92008] Re: Functional programming?
- From: David Bailey <dave at Remove_Thisdbailey.co.uk>
- Date: Tue, 16 Sep 2008 19:26:48 -0400 (EDT)
- References: <200809130957.FAA03536@smc.vnet.net> <gal3dg$dql$1@smc.vnet.net>
peter lindsay wrote: > as an old-timer myself - I'd be very interested in this too, > particularly - as you say - with reference to engineering problems. > I'm afraid my favorite construct was the REPEAT - UNTIL loop, which > should finally ruin any shreds of credibility that I may once have > had... I think it is possible to frighten people off with functional programming. It is true that simple examples of FP can be much shorter than their procedural equivalent, and will almost certainly run much faster, but FP can become very messy for some real world problems, and procedural programming offers a way to 'hack' almost anything. I am tempted to give an example of something that is hard to do by FP, but someone will, of course, provide an answer - but that is not the point, the point is whether users with limited experience of Mathematica would be able to come up with such a solution. There are quite a few While loops in my Super Widget Package! I feel there is another thing to say regarding FP. The fact that FP performs so well in Mathematica is, in my opinion, something of a fluke. The real reason is that because Mathematica is such a high level language, absolutely every step incurs considerable overhead, that is not present in languages such as Fortran or Java. Because FP provides a way to do a lot in one step, it reduces this overhead. Thus, for example, whole array operations (which are somewhat analogous to FP) in Fortran perform little if any better than explicit DO-loops, and re-coding a Fortran application to use whole array operations may reduce its performance because the cache utilisation can suffer. David Bailey http://www.dbaileyconsultancy.co.uk
- Follow-Ups:
- Re: Re: Functional programming?
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Re: Functional programming?
- References:
- Functional programming?
- From: AES <siegman@stanford.edu>
- Functional programming?