Skip to content
This repository was archived by the owner on Apr 13, 2025. It is now read-only.

Commit f470906

Browse files
Merge pull request #2 from praisetompane/docs_overview
docs: overview of building a scientific and rigourous disciple of computer programming
2 parents f5da16e + 7b97afd commit f470906

25 files changed

+244
-27
lines changed

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,5 +172,8 @@ node_modules
172172
.metals
173173

174174
.DS_Store
175+
accreditation/
176+
ecosystem/
177+
scratch_pad/
175178
journal/
176-
accreditation.txt
179+
applications/
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
def programming_model:
2+
- formal: ???
3+
4+
- in words: ???
5+
6+
- plain english: ???
7+
8+
- intuition: ???
9+
10+
- properties: ???
11+
12+
- examples: ???
13+
14+
- use cases: ???
15+
16+
- proof: ???
17+
18+
References: ???

README.md

Lines changed: 40 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -3,34 +3,48 @@
33
![build status](https://github.com/praisetompane/computer_programming/actions/workflows/computer_programming.yaml/badge.svg) <br>
44

55
## Objectives
6-
- Attempts to define a unified discipline of computer programming independent of programming language implementations.
6+
- Attempts to define a unified scientific discipline of computer programming independent of programming language implementations.
77

88
## Definitions:
9-
- def programming concepts (Van Roy, Haridi S. 2004:xiii):
10-
- these are organized in terms of/in relation to computation models:
11-
- def computation model: formal system, that defines how computations are done (Van Roy, Haridi S. 2004:xiii):
12-
- based on a simple core language called its kernel language (Van Roy, Haridi S. 2004:xiv)
13-
- def kernel language: TBD
14-
- defined in terms of (Van Roy, Haridi S. 2004:xiii):
15-
- data types
16-
- operations
17-
- a programming language
18-
19-
**NB** there are other ways to define computation models: - finite automata (Sipser, 2012:xvii)
20-
21-
- provides:
22-
- a programming model:
23-
- def programming model: a set of programming techniques and design principles
24-
used to write programs
25-
in the language of the computation model (Van Roy, Haridi S. 2004:29).
26-
- def programming techniques: TBD
27-
- def design principles: TBD
28-
- set of techniques for:
29-
- reasoning about programs
30-
31-
- def creative extension principle: main criterion for when and which concept to add to a computation mode/kernel language (Van Roy, Haridi S. 2004:xiv)
32-
33-
- def computer programming: the act of extending or changing a system's functionality (Van Roy, Haridi S. 2004:xv).
9+
- def computation model(Haridi and Van Roy, 2004:xiii):
10+
- formal: ???
11+
12+
- in words: formal system, that defines how computations are done
13+
14+
- plain english: ???
15+
16+
- intuition: ???
17+
18+
- properties:
19+
- based on a simple core language called its kernel language (Haridi and Van Roy, 2004:xiv)
20+
- def kernel language: TBD
21+
- defined in terms of (Haridi and Van Roy, 2004:xiii):
22+
- data types
23+
- operations
24+
- a programming language
25+
26+
**NB** there are other ways to define computation models: - finite automata (Sipser, 2012:xvii)
27+
28+
- provides:
29+
- a programming model:
30+
- def programming model: a set of programming techniques and design principles
31+
used to write programs
32+
in the language of the computation model (Haridi and Van Roy, 2004:29).
33+
- def programming techniques: TBD
34+
- def design principles: TBD
35+
- set of techniques for:
36+
- reasoning about programs
37+
38+
- examples: ???
39+
40+
- use cases: ???
41+
42+
- proof: ???
43+
44+
45+
- def creative extension principle: main criterion for when and which concept to add to a computation mode/kernel language (Haridi and Van Roy, 2004:xiv)
46+
47+
- def computer programming: the act of extending or changing a system's functionality (Haridi and Van Roy, 2004:xv).
3448
- practitioners:
3549
- general users: by changing the setting of an alarm
3650
- expert users: by writing new features for the system or updating existing

todo.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
- lectures:
33
- readings:
44
- Van Roy, P. 2004. Concepts, Techniques, and Models of Computer Programming
5+
- current: 1 Introduction to Programming Concepts pg 31
56
- assignments:
67
- exams:
78

0 commit comments

Comments
 (0)