Declarative programming is a programming paradigm that allows you describe what you want to achieve rather than exactly how to achieve it. Our experience has shown that it saves at least an order of magnitude in programming time and costs. The first public computer was installed in 1957 in Norwich, England. That was also the time that the first mainstream programming languages were designed, Cobol, Fortran, Algol, Lisp. At that time, computers were immensely expensive; so expensive that most companies leased them rather than buying. As part of the leasing deal, the computer would typically come with some programmers who knew how to program it already, at no extra cost. The economic realtionship was that compared with computers, programmers were essentially free. It was in that atmosphere that the first programming languages were designed: it was less important if it took a long time to program, as long as the program ran fast, and so were born procedural programming methods, where you tell the computer step-by-step how to achieve the solution. Slowly but surely, and largely unnoticed, Moore’s Switch happened: computers became cheap, and programmers expensive, giving exactly the opposite position: compared to programmers, computers are essentially free. And yet that relationship hasn’t yet had an effect on the design of programming languages: we are still telling the computers what do to, rather than what we are trying to achieve. This is why documentation is so essential in programming, because the program has only a very tenuous relationship with the problem domain. XForms (the name refers to the Form in “Form and Content”) is a Turing-complete declarative programming language, standardised at W3C, and in use around the world. This talk will explain the benefits of declarative programming in more detail.
See http://www.cwi.nl/~steven for details
Mon 15 JulDisplayed time zone: Belfast change
10:45 - 12:15 | |||
10:45 45mTalk | Declarative - The paradigm that didn't get mentioned Curry On Steven Pemberton CWI, Amsterdam | ||
11:30 45mTalk | Say What You Mean: Exploring Declarative Computation in Art Curry On David Schmudde Nextjournal |