Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There are a bunch of other paradigms, e.g. declarative programming was considered the thing some decades ago; but in general nowadays most domains are best handled by the tools & approaches we have from either the direct imperative simplicity, the OOP camp, or the functional mindset.


I think declarative is still preferred, if you can make it work. I think the real issue is coming up with a declarative language that is general purpose and efficient enough.

For specific domains, however, declarative languages have done quite well, e.g. SQL, regexps, XPath, etc.


I believe that what we're seeing is declarative paradigm used as subsystems / domain specific languages that do a particular core task accurately and efficiently, but surrounded with a general purpose "scripting environment" in which you do the messy interfaces with the surrounding world and users.

Besides the obvious SQL example, the current ML systems such as Tensorflow are a great illustration; you declare a particular computation graph and then the system "just executes it" over multiple GPUs.


Functional is one of the many possible idioms of declarative programming.

It's just one that's completely focused on an idealization of "software", instead of any more concrete problem. That makes it more general than most. And the functional idealization is more similar to what real computers run than other representations (some people already mentioned Prolog). Those give FP some advantages over the others, at least for now.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: