comp.lang.ada
 help / color / mirror / Atom feed
From: Phil Clayton <phil.clayton@lineone.net>
Subject: Re: Some exciting new trends in concurrency and software design
Date: Tue, 21 Jun 2011 05:14:03 -0700 (PDT)
Date: 2011-06-21T05:14:03-07:00	[thread overview]
Message-ID: <3a7bcec1-5dc9-466b-b97e-39f7ccd49970@d1g2000yqm.googlegroups.com> (raw)
In-Reply-To: 4dff5be5$0$6565$9b4e6d93@newsspool3.arcor-online.net

On Jun 20, 3:40 pm, Georg Bauhaus <rm.dash-bauh...@futureapps.de>
wrote:
>
> 2. FP *hides* the effective work's complexity behind a mathematical
> facade: you write down a nice formula after days of thinking,
> shouting, explaining, and getting it right. Then, you do *not*
> document your "thought process" in source text.  Instead, you just
> "sign" days of work with a few nice lines of code.  That's quite
> typical of FP, I think, but just less feasible in "imperative"
> languages.  We can stare at the short FP algorithm in awe of its
> "mathematical elegance" and start wondering what the heck it is doing
> behind the scenes.

I don't believe that it is less feasible in imperative languages or
any other paradigm: put in enough effort to make insightful
observations and you can come up with succinct efficient algorithms
that are hard to understand.  Consider the following imperative
example from Carroll Morgan's book Programming from Specifications
(see last page):
http://www.cs.ox.ac.uk/publications/books/PfS/PfS-21.ps.gz
(Well.. it didn't exactly leap out at me!)

I would suggest that elegant and insightful programs are due to the
more academic nature of the text/author.  I do agree that such elegant
programs are more typical with FP but only because a much greater
proportion of FP text has academic roots.

There is plenty of industrial FP out there, where the emphasis is on
code being well documented and understandable, maintainable etc. by
normal people.  I suppose that is industrial elegance!

Phil



  parent reply	other threads:[~2011-06-21 12:14 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-20 10:49 Some exciting new trends in concurrency and software design jonathan
2011-06-20 14:40 ` Georg Bauhaus
2011-06-20 14:48   ` Georg Bauhaus
2011-06-20 23:56   ` jonathan
2011-06-21  9:36     ` steveh44
2011-06-21 13:04       ` Phil Clayton
2011-06-22  0:37       ` Shark8
2011-06-22  9:45       ` anon
2011-06-29 21:39         ` Robert A Duff
2011-06-30 16:52           ` anon
2011-07-01 18:31             ` Shark8
2011-06-23  9:59       ` Yannick Duchêne (Hibou57)
2011-06-23 10:25         ` Dmitry A. Kazakov
2011-06-23 10:57           ` Yannick Duchêne (Hibou57)
2011-06-23 12:20             ` Dmitry A. Kazakov
2011-06-23 22:17             ` Georg Bauhaus
2011-06-24  1:26               ` Phil Clayton
2011-06-24  1:34                 ` Yannick Duchêne (Hibou57)
2011-06-24 10:41                 ` Georg Bauhaus
2011-06-24  1:27               ` Yannick Duchêne (Hibou57)
2011-06-24 10:32                 ` Georg Bauhaus
2011-06-24 13:45                   ` Yannick Duchêne (Hibou57)
2011-06-21 12:19     ` Dmitry A. Kazakov
2011-06-21 12:14   ` Phil Clayton [this message]
2011-06-22  8:39   ` Oliver Kleinke
2011-06-23  2:48     ` Nasser M. Abbasi
2011-06-23  9:23   ` Yannick Duchêne (Hibou57)
2011-06-23 10:03     ` Nasser M. Abbasi
2011-06-23 11:07       ` Yannick Duchêne (Hibou57)
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox