Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p><strong>Declarative Programming</strong>. </p> <p>In 1979 "computer programs" were imperative. The programmer was expected to instruct the compiler on both <em>what</em> to do and <em>how</em> to do it. (N1) </p> <p>Today, <a href="http://msdn.microsoft.com/en-us/library/ms973868.aspx" rel="nofollow noreferrer">ASP.NET WebForms</a> and <a href="http://msdn.microsoft.com/en-us/netframework/aa663326.aspx" rel="nofollow noreferrer">WPF</a> programmers regularly write code without knowing or caring <em>how</em> it will be implemented. <a href="http://en.wikipedia.org/wiki/Declarative_programming" rel="nofollow noreferrer">Wikipedia</a> has other, less mainstream examples. Additionally, all of the <a href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=16387" rel="nofollow noreferrer">SGML</a>-derived "markup" languages are declarative, and I doubt many of the programmers of 1979 would have predicted their importance or ubiquity in 30 years. </p> <p>Although the <em>concept</em> of declarative programming existed before 1980 (see <a href="http://portal.acm.org/citation.cfm?doid=953064.811138" rel="nofollow noreferrer">this paper</a> from 1975), it's <em>invention</em> took place with the introduction of <a href="http://caml.inria.fr/" rel="nofollow noreferrer">Caml</a> in 1985 (debatable) or <a href="http://www.haskell.org/" rel="nofollow noreferrer">Haskell</a> in 1990 (less debatable). (N2) Since then, declarative programming has increased greatly in popularity. And, when massively multicore processors finally arrive, we'll <em>all</em> be declarative programmers.</p> <p>--<br/> <em>Notes:</em><br/> (N1) I can't vouch for this firsthand, since I was a fetus in 1979. <br/> (N2) From other answers, it seems like people are confusing conception with invention. Da Vinci conceived of a helicopter, but he didn't invent it. The question is specifically on <em>inventions</em> in computing. <br/> (N3) Please don't mention Prolog (rel. 1975) in the comments unless you have actually built an app in it. </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload