For the moment let’s think of it as “not imperative programming,” where “imperative programming” is you, the Grand Imperator, telling the program what to do. Declarative programming would instead make you the Grand Declarator: you instead tell the program what it is. And, with that, the program no doubt walks away enlightened. (Even if we don’t.)
All declarative systems are abstract, but perhaps not all abstractions are declarative. What makes an abstraction declarative?
some of those declarative solutions may well be qualitatively better than how we might be solving them otherwise—in fact, I think that’s extremely likely
Declarative code is simpler. It’s usually easier to read, in my experience. It’s smaller, if more spread out; easy to get around. It’s more reliable simply because each component has fewer moving pieces which could fail, and fewer joints between them that could break. On top of all of that, the lack of ordering means that declarative code is immune to race conditions, the single largest issue with concurrency. And it is clearly the direction that the market and the industry is heading in: there is a lot of ongoing, exciting research being done in declarative languages and systems and how to survive in an imperative world.
Nice turn of phrase, Grand Declarator, sir! (Personally, I have been getting right in to ABNF of late - generating regex and API systems and such based upon that.)
If he had replaced "post modernism" with the term "post structuralism" he would have realised he should not write the piece from the get go.
that postmodern programming, is googling for code snippet to paste in your ide or framework
and all the effort you will do is configure and glue stuff together
sounded cool at the time
http://www.wall.org/~larry/pm.html
Perl, the first postmodern computer language
Though its a bit deeper than your summary so perhaps not.
I've been assigned to my first Java project at work, and during training they would show how much you could do without 'coding'. I guess editing XML files and inserting program code in the strings of said XML files isn't technically 'coding', where I guess 'coding' means writing scary Java code with, you know, type checking and relvant error messages and stuff. Why I need to be able to redefine the class name of our 'beans' internal to the working of our system using a user editable configuration file is beyond me.
/rant
Glad that I'm far from that project now.