annotate summary.roff @ 236:49d3aa0d128a default tip

style: Removed unused macro code.
author markus schnalke <meillo@marmaro.de>
date Mon, 16 Jul 2012 11:31:25 +0200
parents a1468cf505fd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
1 .H0 "Summary
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
2 .P
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
3 This document describes and explains my work on mmh.
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
4 I have streamlined the project by removing programs, facilities,
178
520b3c7abba1 s/a MUA/an MUA/
markus schnalke <meillo@marmaro.de>
parents: 173
diff changeset
5 and options that diverted from the main task of mmh, being an MUA.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
6 I have modernized the code base removing obsolete functions and
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
7 activating modern features per default.
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
8 Furthermore, I have improved the style by refactoring clumpsy code
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
9 and by identifying and forcing clear concepts.
228
a1468cf505fd Spellchecked.
markus schnalke <meillo@marmaro.de>
parents: 222
diff changeset
10 All my work was motivated by Antoine de Saint Exup\[eacute]ry's
a1468cf505fd Spellchecked.
markus schnalke <meillo@marmaro.de>
parents: 222
diff changeset
11 well-known statement:
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
12 .[
213
de8172bcdc5e Improvements and rework of various kind.
markus schnalke <meillo@marmaro.de>
parents: 200
diff changeset
13 antoine de saint exupery wind sand and stars
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
14 .]
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
15 .QS
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
16 It seems that perfection is attained not when there is nothing
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
17 more to add, but when there is nothing more to remove.
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
18 .QE
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
19 .LP
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
20 Against the common expectations, I hardly added new features.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
21 I regard my achievement in the selection of the relevant set of existing
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
22 features, the choice of sensible defaults, and the extensive
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
23 focus on structure and concepts.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
24 I believe, the result is a system simpler and clearer for both
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
25 developing and using, without lacking important functionality.
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
26
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
27 .KS
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
28 .in 1c
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
29 .so input/sloc.grap
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
30 .KE
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
31
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
32
164
5c01017be420 Reacted to suggestions by Aaron Mueller.
markus schnalke <meillo@marmaro.de>
parents: 162
diff changeset
33 .U2 "Outlook
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
34 .P
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
35 MIME handling is the most complex part of mmh and the one with the
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
36 highest potential for improvements.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
37 The changes already accomplished so far build upon the existing structure,
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
38 but deeper rework is necessary to integrate MIME handling consistently.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
39 For instance, accessing messages and accessing their MIME parts
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
40 should both covered by a single approach.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
41 This requires the sequence notation to provide a way to address
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
42 MIME parts directly.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
43 In general, the sequence notation should become more powerful.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
44 For instance, it is currently not possible to access the second last
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
45 message in a given sequence.
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
46 Furthermore, displaying messages can be improved.
189
22feb390ccc4 Applied suggestions by Lydi.
markus schnalke <meillo@marmaro.de>
parents: 181
diff changeset
47 Encrypted messages should be decoded automatically
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
48 and digital signatures verified on-the-fly.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
49 In this rework, MH's unique features need to be preserved,
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
50 but as well the default behavior should become less surprising.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
51 Still, encoding and decoding is not done everywhere it is necessary.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
52 The problems of not decoded quotations of the original message in replies
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
53 and not encoded non-ASCII characters in the message header remain.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
54 .P
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
55 Some of mmh's tools were hardly touched, yet.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
56 Among them are
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
57 .Pn dist ,
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
58 .Pn rcvdist ,
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
59 .Pn mark ,
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
60 .Pn pick ,
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
61 and
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
62 .Pn sortm .
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
63 They should be refactored as well.
164
5c01017be420 Reacted to suggestions by Aaron Mueller.
markus schnalke <meillo@marmaro.de>
parents: 162
diff changeset
64 Related to
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
65 .Pn sortm
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
66 is the threaded message view, which is completely missing, so far.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
67 .Pn pick
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
68 could profit from message indexing.
189
22feb390ccc4 Applied suggestions by Lydi.
markus schnalke <meillo@marmaro.de>
parents: 181
diff changeset
69 These fields deserve further research.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
70 .P
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
71 Nmh's testing framework has not been updated for mmh, yet.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
72 All refactoring had been done without the safety net of a test framework.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
73 Hence, experience warns that there may be subtle bugs in the code base.
222
2427d1dadb57 Small change in the summary.
markus schnalke <meillo@marmaro.de>
parents: 213
diff changeset
74 As a consequence of the modularization rework (cf. Sec.
2427d1dadb57 Small change in the summary.
markus schnalke <meillo@marmaro.de>
parents: 213
diff changeset
75 .Cf modularization ),
2427d1dadb57 Small change in the summary.
markus schnalke <meillo@marmaro.de>
parents: 213
diff changeset
76 the compiler can no longer check the integrity of the interfaces
2427d1dadb57 Small change in the summary.
markus schnalke <meillo@marmaro.de>
parents: 213
diff changeset
77 when tools invoke each other.
2427d1dadb57 Small change in the summary.
markus schnalke <meillo@marmaro.de>
parents: 213
diff changeset
78 Automated testing should detect errors there.
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
79 .P
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
80 The features most often asked for are IMAP and Maildir support.
189
22feb390ccc4 Applied suggestions by Lydi.
markus schnalke <meillo@marmaro.de>
parents: 181
diff changeset
81 But, both of them collide with MH in the same fundamental way as
228
a1468cf505fd Spellchecked.
markus schnalke <meillo@marmaro.de>
parents: 222
diff changeset
82 different file system approaches collide with Unix.
190
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
83 Nevertheless, an abstraction layer could provide a mapping between such
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
84 storage back-ends and the MH storage format.
2443264b1745 Added sloccount graph to the summary.
markus schnalke <meillo@marmaro.de>
parents: 189
diff changeset
85 Or, the mmh tool chest could be reworked to operate on a generic back-end,
164
5c01017be420 Reacted to suggestions by Aaron Mueller.
markus schnalke <meillo@marmaro.de>
parents: 162
diff changeset
86 making the MH storage format only one of many possible back-ends.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
87 Research in this area is highly appreciated.
132
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
88
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
89
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
90 .U2 "Relationship to nmh
8c56dac46efe Renamed Summary to Future of mmh; added some text fragments there.
markus schnalke <meillo@marmaro.de>
parents: 107
diff changeset
91 .P
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
92 The mmh project started as an experimental version of nmh because the
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
93 nmh community did not welcome my plans and visions.
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
94 The need to convincing the community of every change I liked to
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
95 undertake would have slowed down my work too much.
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
96 Hence, I created this experimental version to convince by demonstration.
0
dc2bfef4cda7 Initial commit: Basic structure, macros and fonts.
markus schnalke <meillo@marmaro.de>
parents:
diff changeset
97 .P
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
98 While I worked on mmh, nmh's community became very active as well.
200
c299ed65d015 Spell checked.
markus schnalke <meillo@marmaro.de>
parents: 196
diff changeset
99 Although we both worked on the same code base, there was no collaboration.
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
100 This, I must admit, was my failure because I kept my work hidden
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
101 from the nmh community.
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
102 The reasons are personal and community-related.
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
103 I am sorry for that and I like to improve in the future.
196
a75de0da2fb7 summary: Improvements and cleanup.
markus schnalke <meillo@marmaro.de>
parents: 192
diff changeset
104 Nonetheless, I did not work behind completely closed doors.
a75de0da2fb7 summary: Improvements and cleanup.
markus schnalke <meillo@marmaro.de>
parents: 192
diff changeset
105 I discussed within the regional computer community and
a75de0da2fb7 summary: Improvements and cleanup.
markus schnalke <meillo@marmaro.de>
parents: 192
diff changeset
106 presented the project in two video-recorded lectures.
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
107 .[
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
108 chaosseminar ccc ulm mmh
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
109 .]
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
110 .[
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
111 gpn entropia mmh
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
112 .]
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
113 First users appeared and provided feedback.
161
72ef1f2e58a3 More text for the Future/Summary chapter.
markus schnalke <meillo@marmaro.de>
parents: 158
diff changeset
114 .P
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
115 Over time, I had to realize that, although nmh and mmh have much
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
116 in common, the projects target different goals.
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
117 I am still undecided how to handle it, but my experimental version
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
118 more and more feels like being a fork.
196
a75de0da2fb7 summary: Improvements and cleanup.
markus schnalke <meillo@marmaro.de>
parents: 192
diff changeset
119 As I am strongly convinced that the path taken for the
a75de0da2fb7 summary: Improvements and cleanup.
markus schnalke <meillo@marmaro.de>
parents: 192
diff changeset
120 development of mmh is a good one,
192
68980dab3236 Rework of the Summary.
markus schnalke <meillo@marmaro.de>
parents: 190
diff changeset
121 I like to push the project farther in this direction.