Linked by Thom Holwerda on Mon 14th Jan 2013 23:15 UTC, submitted by MOS6510
General Development "Programming languages are living phenomena: They're born, the lucky ones that don't die in infancy live sometimes long, fruitful lives, and then inevitably enter a period of decline. Unlike real life, the decline can last many, many years as the presence of large legacy codebases means practiced hands must tend the code for decades. The more popular the language once was, the longer this period of decline will be."
Thread beginning with comment 548921
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[3]: Comment by RareBreed
by satsujinka on Tue 15th Jan 2013 22:09 UTC in reply to "RE[2]: Comment by RareBreed"
satsujinka
Member since:
2010-03-11

"The functional programming is going to be just another tool of multi-paradigm programming languages, I think.


Agreed. Over the years, I've found very little value in OO languages - but I find a *lot* of value in having objects in more traditional procedural or functional languages.
"

Fixed that for ya ;)

Serious now.

It's true, pure functional is only a marginal improvement over impure functional. It's sort of like the distinction between weak and strong typing. But just as we prefer strong typing for the guarantees it gives us we should prefer pure functional to impure.

Reply Parent Score: 2

RE[4]: Comment by RareBreed
by ndrw on Tue 15th Jan 2013 22:20 in reply to "RE[3]: Comment by RareBreed"
ndrw Member since:
2009-06-30

"we prefer"?

Reply Parent Score: 2

RE[5]: Comment by RareBreed
by satsujinka on Wed 16th Jan 2013 06:02 in reply to "RE[4]: Comment by RareBreed"
satsujinka Member since:
2010-03-11

If you'd like to be helpful, please point me to someone who prefers weak typing to strong typing. Then put that in context of everyone who prefers the reverse.

Please note that this is not a comment on the preference for dynamic or not. A dynamic language can still be weakly or strongly typed underneath (Python for instance is a strongly typed dynamic language.)

"We" in this case is in reference to the general populace of programmers.

Reply Parent Score: 2

RE[4]: Comment by RareBreed
by Delgarde on Tue 15th Jan 2013 22:39 in reply to "RE[3]: Comment by RareBreed"
Delgarde Member since:
2008-08-19

It's true, pure functional is only a marginal improvement over impure functional. It's sort of like the distinction between weak and strong typing. But just as we prefer strong typing for the guarantees it gives us we should prefer pure functional to impure.



Disagree, pure functional is a serious step backward compared to a language that allow you to mix functional with procedural or OO techniques. Seriously, why should I prefer pure-functional when all that gives me is reduced flexibility?

Reply Parent Score: 2

RE[5]: Comment by RareBreed
by ndrw on Tue 15th Jan 2013 23:23 in reply to "RE[4]: Comment by RareBreed"
ndrw Member since:
2009-06-30

"pure functional" = functional,
"functional" = maybe functional, maybe not - review the code.

OTOH, I agree that current pure functional languages are too limiting/inconvenient in practice.

Reply Parent Score: 2

RE[5]: Comment by RareBreed
by satsujinka on Wed 16th Jan 2013 06:06 in reply to "RE[4]: Comment by RareBreed"
satsujinka Member since:
2010-03-11

Exactly because it reduces flexibility. That's why I compared it to weak/strong typing.

Both strong typing and "pure functional" provide additional guarantees about the content of some object (values/variables and functions respectively.) In the case of pure functions, the guarantee is that they will always be referentially transparent and have no side effects. It's simply impossible to construct something which isn't. This is a valuable guarantee, at least for a compiler, due to the optimizations such a function allows.

Reply Parent Score: 2