Declarativeness: the work done by something else

11/25/2017
by   Attila Egri-Nagy, et al.
0

Being declarative means that we do computer programming on higher levels of abstraction. This vague definition identifies declarativeness with the act of ignoring details, but it is a special case of abstraction. The unspecified part is some computational work. Automating computations and offloading mental processing are essentially the same concept, which is fundamental for both computational and mathematical thinking. This shows that declarativeness is not just a particular style, but it is the core idea of programming. Here we demonstrate this argument and examine its consequences for teaching by a systematic study of coding examples from an introductory programming course. The chosen language is Clojure, as it is proven to be accessible for novices.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/01/2023

Cheat Sheet for Teaching Programming with Comics: Through the Lens of Concept-Language-Procedure Framework

Comics is emerging as a popular medium for providing visual explanations...
research
10/22/2017

Teaching Programming and Design-by-Contract

This paper summarizes the experience of teaching an introductory course ...
research
02/28/2019

Thinging for Computational Thinking

This paper examines conceptual models and their application to computati...
research
02/18/2023

Functional Programming and Streams

This document is intended as a stand-alone textbook chapter to be used f...
research
02/08/2018

Improving the Universality and Learnability of Neural Programmer-Interpreters with Combinator Abstraction

To overcome the limitations of Neural Programmer-Interpreters (NPI) in i...
research
08/27/2018

A Systematic Approach to Programming

We show how to systematically implement a mental representation of an al...

Please sign up or login with your details

Forgot password? Click here to reset