blob: 39d715bc018b3f674249a62e733d6c8ea7615cc5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
## Lines in source files
Initial -whitespace/comments/tests
apps/factorial.subx 120 44
apps/crenshaw2-1.subx 561 180
apps/crenshaw2-1b.subx 757 186
apps/hex.subx 1442 149
apps/survey.subx 4733 905
apps/pack.subx 5881 840
apps/dquotes.subx 1925 383
apps/assort.subx 905 183
apps/tests.subx 284 137
apps/sigils.subx 4641 896
apps/calls.subx 1785 448
apps/braces.subx 360 121
apps/mu.subx (incomplete) 24014 7908
## Total source lines needed including libraries
Initial -whitespace/comments/tests/dead code
apps/factorial.subx 8436 1700
apps/crenshaw2-1.subx 8644 1925
apps/crenshaw2-1b.subx 8736 1931
apps/hex.subx 9065 1908
apps/survey.subx 10217 3248
apps/pack.subx 10589 2727
apps/dquotes.subx 9262 2468
apps/assort.subx 8686 2425
apps/tests.subx 8519 2214
apps/sigils.subx 10578 3043
apps/calls.subx 9242 2388
apps/braces.subx 8545 2111
apps/mu.subx (incomplete) 27107 10729
## executable size in KB
Initial -tests/dead code
apps/crenshaw2-1 41 4.3
apps/crenshaw2-1b 42 5.2
apps/factorial 42 5.2
apps/hex 45 5.0
apps/survey 51 9.6
apps/pack 54 7.6
apps/dquotes 46 6.5
apps/assort 42 6.4
apps/tests 41 5.8
apps/sigils 54 9.1
apps/calls 47 7.1
apps/braces 42 5.9
apps/mu (incomplete) 380 70.0
## history of apps/mu.subx
date commit mu.subx -tests/cmts binary (KB excl. dead code)
parsing function headers 2019 Oct 30 5725 621 277 6.9
function calls Nov 10 5739 1202 346 7.2
code-generating primitive instructions Nov 17 5750 1923 363 7.3
arguments Nov 30 5785 4038 1330 13
return values 2020 Jan 1 5878 5432 1457 15
compound types: `addr` and `array` Jan 20 5911 6023 1697 16
local variables and their reclamation Jan 27 5934 6340 1900 18
register locals and shadowing Jan 27 5940 6498 1940 18
blocks Jan 29 5948 7455 2534 22
break/continue instructions Jan 30 5964 7871 2558 22
cleaning up locals in the presence of early exits Feb 9 6000 8554 2918 26
pointer dereferencing Feb 20 6040 9053 3075 27
arrays, and indexing them with a non-literal
user-defined types, and getting fields in them Mar 11 6135 11592 4165 33
cleanup: switch to handles everywhere May 22 6382 15014 5064 39
first round of prototyping and static checks Jun 21 6572 18722 6044 49
more checks Jul 25 6674 22067 7153 61
more checks Aug 22 6723 23934 7851 69
vim:nowrap:tw&
|