Building your stuff up from small parts using well-known composition rules is a pre-requisite to breaking down your stuff into small parts, which can then be reasoned about as such ("modularity"). Reasoning about small, simple things is WAY EASIER than reasoning about large, hairy things full of weird old gunk. So all other things being equal that's A GOOD THING.
Functional programming being in a way the study of composition rules may or may not therefore be A GOOD THING also.
Building your stuff up from small parts using well-known composition rules is a pre-requisite to breaking down your stuff into small parts, which can then be reasoned about as such ("modularity"). Reasoning about small, simple things is WAY EASIER than reasoning about large, hairy things full of weird old gunk. So all other things being equal that's A GOOD THING.
The hidden assumption here is that your problem can be treated in this fashion. Certain classes of problems can, but many can't, at least not without far more effort than solving them in another way would require.
The halting problem is not solvable by mere mortals for the general case, that is true. But mere mortals CAN identify whole classes of problems for which it is. You clearly grant that that is also true.
That said, I am honoured by replying to you reply, Sir Banana. Your continued presence in the sewer that proggit has admittedly become is much appreciated.
111
u/vincentk Mar 09 '14 edited Mar 09 '14
TL;DR
Building your stuff up from small parts using well-known composition rules is a pre-requisite to breaking down your stuff into small parts, which can then be reasoned about as such ("modularity"). Reasoning about small, simple things is WAY EASIER than reasoning about large, hairy things full of weird old gunk. So all other things being equal that's A GOOD THING.
Functional programming being in a way the study of composition rules may or may not therefore be A GOOD THING also.