From: Dmitry A. Kazakov on 28 Jul 2010 14:40 On Wed, 28 Jul 2010 18:47:40 +0100, (see below) wrote: > I was at a short talk given by one of the leading FP propagandists. > He drew an S-curve depicting technological penetration against time, and > admitted that FP was still at the bottom left, far from lift-off. After 50 > years! (McCarthy's "Recursive functions of symbolic expressions and their > computation by machine, Part I" was published in 1960. We still seem to be > waiting for Part II: "real-world relevance".) It is an interesting topic actually. There is a never ending struggle for another computational platform. Any declarative framework is in the end an attempt to replace our machines with something else. So were RDBMS, the 5GL project (prolog etc, if anybody still remember that), modeling languages like UML, and ones like Simulink. FP is very much alike. So far all these attempts failed. I mean technically, RDMS and modeling tools are commercially quite successful [*]. It is interesting to see what happens when the platform indeed changes. The candidates might be quantum, molecular machines, massively parallel systems. ------------------- * To the OP, if you want to make FP successful, here is a simple recipe. Make a tool chain. Name it functional-whatever. Advertise it for C and Java. Managers like tools. They honestly believe that tools produce software. I mean literally, you buy the tool X and the project Y is advanced two weeks ahead. The more expensive the tool is greater is the advance. Who would buy it otherwise? If you buy many most expensive ones, you would need no these lazy overpaid guys, the programmers... -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de
From: Warren on 28 Jul 2010 15:09 Dmitry A. Kazakov expounded in news:g24nvegdi17t$.1azxwn1rwjixi$.dlg(a)40tude.net: > On Wed, 28 Jul 2010 08:24:08 -0700 (PDT), J.s wrote: ... >> and >> functions as values to make it easy to abstract units of a solution >> into reusable pieces. > > Function as a value of what? And what is the difference? Maybe a side > effect of the call? Anyway I don't see how values can be reusable. > >> Does anyone have any thoughts on this? I think FP and procedural languages are like opposite ends of a fourier tranform. In one system, one set of languages are very effective at solutions in that domain, while the \ other set of languages (FP) struggles. Do the transform into the other system, and then the other (FP) languages provide simple answers to some problems, while the traditional ones struggle. Each collection of languages best solve problems in their domain of applicability. For my money, FP still is less generally effective because it relies on special tricks/algorithms to narrow down the huge number of paths for a solution. If the tricks/algorithms do apply, then it works. For all other situations it is either wrong or impractical (takes too long etc.) Warren
From: Dmitry A. Kazakov on 28 Jul 2010 15:35 On Wed, 28 Jul 2010 19:09:17 +0000 (UTC), Warren wrote: > Each collection of languages best solve problems in their > domain of applicability. That reminds me someone's saying about 5GL in early 90's: "if 5GL is an answer what was the question?" What are the domains of poor languages? Since they must exist, but cannot be observed, then in some outer dimension. Which is another proof that the Universe must be multidimensional... (:-)) > For my money, FP still is less generally effective because > it relies on special tricks/algorithms to narrow down the > huge number of paths for a solution. This universally applies to all declarative languages. > If the tricks/algorithms > do apply, then it works. For all other situations it is either > wrong or impractical (takes too long etc.) The problem is that any real system never belongs to a narrow domain. The domain specific schism leads to the components in different paradigms unable to talk to each other. Any gain one might get through applying domain specific solutions is quickly spent on developing tons of software needed to hold the mess together. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de
From: Kulin Remailer on 28 Jul 2010 15:37 The main thing is to never respond to google groups posts. I didn't see his troll until you guys quoted it ;-)
From: deadlyhead on 28 Jul 2010 19:34 Wow. I feel completely out of place here. I regularly code in functional, imperative and use OOP strategies side- by-side. When I want to hack, I use Scheme (specifically Guile). I naturally gravitate to doing everything in a functional style in Scheme because it's so _natural_, but when a situation calls for it, I load up GOOPS and get some OOP going. There's absolutely nothing wrong with using the right tools for the job. Heck, I'll even write some functions in Ada that never assign a variable, but instead construct a return statement from a series of sub-functions. My total perspective is thus: both functional programming and imperative/OOP as implemented by Ada are designed for safety, expressiveness and cleanliness/maintainability. Ada accomplishes this via type safety, clear syntax and a host of other design decisions that I don't particularly feel like ticking off. Functional languages achieve much of the same safety, even with dynamic typing, by simply doing away with assignment, and thus abusing conversion rules between types. Perhaps I look at it as with Ada we must be deliberate with each of our actions, but with functional languages we must be deliberate with our _intentions_. Call me crazy, but building a solid system in Ada and embedding a powerful Scheme for extension seems like the beautiful middle way to me.
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 4 5 Prev: team-ada (was e: Interfacing Ada with C Next: ANN: GtkAda contributions v2.8 |