mirror of
https://github.com/papers-we-love/papers-we-love.git
synced 2026-03-02 03:40:31 +00:00
6766 lines
401 KiB
Plaintext
6766 lines
401 KiB
Plaintext
|
|
%PDF-1.4
|
|||
|
|
5 0 obj
|
|||
|
|
<< /S /GoTo /D (section.1) >>
|
|||
|
|
endobj
|
|||
|
|
8 0 obj
|
|||
|
|
(Introduction)
|
|||
|
|
endobj
|
|||
|
|
9 0 obj
|
|||
|
|
<< /S /GoTo /D (section.2) >>
|
|||
|
|
endobj
|
|||
|
|
12 0 obj
|
|||
|
|
(Complexity)
|
|||
|
|
endobj
|
|||
|
|
13 0 obj
|
|||
|
|
<< /S /GoTo /D (section.3) >>
|
|||
|
|
endobj
|
|||
|
|
16 0 obj
|
|||
|
|
(Approaches to Understanding)
|
|||
|
|
endobj
|
|||
|
|
17 0 obj
|
|||
|
|
<< /S /GoTo /D (section.4) >>
|
|||
|
|
endobj
|
|||
|
|
20 0 obj
|
|||
|
|
(Causes of Complexity)
|
|||
|
|
endobj
|
|||
|
|
21 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.4.1) >>
|
|||
|
|
endobj
|
|||
|
|
24 0 obj
|
|||
|
|
(Complexity caused by State)
|
|||
|
|
endobj
|
|||
|
|
25 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.4.1.1) >>
|
|||
|
|
endobj
|
|||
|
|
28 0 obj
|
|||
|
|
(Impact of State on Testing)
|
|||
|
|
endobj
|
|||
|
|
29 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.4.1.2) >>
|
|||
|
|
endobj
|
|||
|
|
32 0 obj
|
|||
|
|
(Impact of State on Informal Reasoning)
|
|||
|
|
endobj
|
|||
|
|
33 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.4.2) >>
|
|||
|
|
endobj
|
|||
|
|
36 0 obj
|
|||
|
|
(Complexity caused by Control)
|
|||
|
|
endobj
|
|||
|
|
37 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.4.3) >>
|
|||
|
|
endobj
|
|||
|
|
40 0 obj
|
|||
|
|
(Complexity caused by Code Volume)
|
|||
|
|
endobj
|
|||
|
|
41 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.4.4) >>
|
|||
|
|
endobj
|
|||
|
|
44 0 obj
|
|||
|
|
(Other causes of complexity)
|
|||
|
|
endobj
|
|||
|
|
45 0 obj
|
|||
|
|
<< /S /GoTo /D (section.5) >>
|
|||
|
|
endobj
|
|||
|
|
48 0 obj
|
|||
|
|
(Classical approaches to managing complexity)
|
|||
|
|
endobj
|
|||
|
|
49 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.5.1) >>
|
|||
|
|
endobj
|
|||
|
|
52 0 obj
|
|||
|
|
(Object-Orientation)
|
|||
|
|
endobj
|
|||
|
|
53 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.1.1) >>
|
|||
|
|
endobj
|
|||
|
|
56 0 obj
|
|||
|
|
(State)
|
|||
|
|
endobj
|
|||
|
|
57 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.1.2) >>
|
|||
|
|
endobj
|
|||
|
|
60 0 obj
|
|||
|
|
(Control)
|
|||
|
|
endobj
|
|||
|
|
61 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.1.3) >>
|
|||
|
|
endobj
|
|||
|
|
64 0 obj
|
|||
|
|
(Summary --- OOP)
|
|||
|
|
endobj
|
|||
|
|
65 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.5.2) >>
|
|||
|
|
endobj
|
|||
|
|
68 0 obj
|
|||
|
|
(Functional Programming)
|
|||
|
|
endobj
|
|||
|
|
69 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.2.1) >>
|
|||
|
|
endobj
|
|||
|
|
72 0 obj
|
|||
|
|
(State)
|
|||
|
|
endobj
|
|||
|
|
73 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.2.2) >>
|
|||
|
|
endobj
|
|||
|
|
76 0 obj
|
|||
|
|
(Control)
|
|||
|
|
endobj
|
|||
|
|
77 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.2.3) >>
|
|||
|
|
endobj
|
|||
|
|
80 0 obj
|
|||
|
|
(Kinds of State)
|
|||
|
|
endobj
|
|||
|
|
81 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.2.4) >>
|
|||
|
|
endobj
|
|||
|
|
84 0 obj
|
|||
|
|
(State and Modularity)
|
|||
|
|
endobj
|
|||
|
|
85 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.2.5) >>
|
|||
|
|
endobj
|
|||
|
|
88 0 obj
|
|||
|
|
(Summary --- Functional Programming)
|
|||
|
|
endobj
|
|||
|
|
89 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.5.3) >>
|
|||
|
|
endobj
|
|||
|
|
92 0 obj
|
|||
|
|
(Logic Programming)
|
|||
|
|
endobj
|
|||
|
|
93 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.3.1) >>
|
|||
|
|
endobj
|
|||
|
|
96 0 obj
|
|||
|
|
(State)
|
|||
|
|
endobj
|
|||
|
|
97 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.3.2) >>
|
|||
|
|
endobj
|
|||
|
|
100 0 obj
|
|||
|
|
(Control)
|
|||
|
|
endobj
|
|||
|
|
101 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.5.3.3) >>
|
|||
|
|
endobj
|
|||
|
|
104 0 obj
|
|||
|
|
(Summary --- Logic Programming)
|
|||
|
|
endobj
|
|||
|
|
105 0 obj
|
|||
|
|
<< /S /GoTo /D (section.6) >>
|
|||
|
|
endobj
|
|||
|
|
108 0 obj
|
|||
|
|
(Accidents and Essence)
|
|||
|
|
endobj
|
|||
|
|
109 0 obj
|
|||
|
|
<< /S /GoTo /D (section.7) >>
|
|||
|
|
endobj
|
|||
|
|
112 0 obj
|
|||
|
|
(Recommended General Approach)
|
|||
|
|
endobj
|
|||
|
|
113 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.7.1) >>
|
|||
|
|
endobj
|
|||
|
|
116 0 obj
|
|||
|
|
(Ideal World)
|
|||
|
|
endobj
|
|||
|
|
117 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.1.1) >>
|
|||
|
|
endobj
|
|||
|
|
120 0 obj
|
|||
|
|
(State in the ideal world)
|
|||
|
|
endobj
|
|||
|
|
121 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.1.2) >>
|
|||
|
|
endobj
|
|||
|
|
124 0 obj
|
|||
|
|
(Control in the ideal world)
|
|||
|
|
endobj
|
|||
|
|
125 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.1.3) >>
|
|||
|
|
endobj
|
|||
|
|
128 0 obj
|
|||
|
|
(Summary)
|
|||
|
|
endobj
|
|||
|
|
129 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.7.2) >>
|
|||
|
|
endobj
|
|||
|
|
132 0 obj
|
|||
|
|
(Theoretical and Practical Limitations)
|
|||
|
|
endobj
|
|||
|
|
133 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.2.1) >>
|
|||
|
|
endobj
|
|||
|
|
136 0 obj
|
|||
|
|
(Formal Specification Languages)
|
|||
|
|
endobj
|
|||
|
|
137 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.2.2) >>
|
|||
|
|
endobj
|
|||
|
|
140 0 obj
|
|||
|
|
(Ease of Expression)
|
|||
|
|
endobj
|
|||
|
|
141 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.2.3) >>
|
|||
|
|
endobj
|
|||
|
|
144 0 obj
|
|||
|
|
(Required Accidental Complexity)
|
|||
|
|
endobj
|
|||
|
|
145 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.7.3) >>
|
|||
|
|
endobj
|
|||
|
|
148 0 obj
|
|||
|
|
(Recommendations)
|
|||
|
|
endobj
|
|||
|
|
149 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.3.1) >>
|
|||
|
|
endobj
|
|||
|
|
152 0 obj
|
|||
|
|
(Required Accidental Complexity)
|
|||
|
|
endobj
|
|||
|
|
153 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.7.3.2) >>
|
|||
|
|
endobj
|
|||
|
|
156 0 obj
|
|||
|
|
(Separation and the relationship between the components)
|
|||
|
|
endobj
|
|||
|
|
157 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.7.4) >>
|
|||
|
|
endobj
|
|||
|
|
160 0 obj
|
|||
|
|
(Summary)
|
|||
|
|
endobj
|
|||
|
|
161 0 obj
|
|||
|
|
<< /S /GoTo /D (section.8) >>
|
|||
|
|
endobj
|
|||
|
|
164 0 obj
|
|||
|
|
(The Relational Model)
|
|||
|
|
endobj
|
|||
|
|
165 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.8.1) >>
|
|||
|
|
endobj
|
|||
|
|
168 0 obj
|
|||
|
|
(Structure)
|
|||
|
|
endobj
|
|||
|
|
169 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.8.1.1) >>
|
|||
|
|
endobj
|
|||
|
|
172 0 obj
|
|||
|
|
(Relations)
|
|||
|
|
endobj
|
|||
|
|
173 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.8.1.2) >>
|
|||
|
|
endobj
|
|||
|
|
176 0 obj
|
|||
|
|
(Structuring benefits of Relations --- Access path independence)
|
|||
|
|
endobj
|
|||
|
|
177 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.8.2) >>
|
|||
|
|
endobj
|
|||
|
|
180 0 obj
|
|||
|
|
(Manipulation)
|
|||
|
|
endobj
|
|||
|
|
181 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.8.3) >>
|
|||
|
|
endobj
|
|||
|
|
184 0 obj
|
|||
|
|
(Integrity)
|
|||
|
|
endobj
|
|||
|
|
185 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.8.4) >>
|
|||
|
|
endobj
|
|||
|
|
188 0 obj
|
|||
|
|
(Data Independence)
|
|||
|
|
endobj
|
|||
|
|
189 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.8.5) >>
|
|||
|
|
endobj
|
|||
|
|
192 0 obj
|
|||
|
|
(Extensions)
|
|||
|
|
endobj
|
|||
|
|
193 0 obj
|
|||
|
|
<< /S /GoTo /D (section.9) >>
|
|||
|
|
endobj
|
|||
|
|
196 0 obj
|
|||
|
|
(Functional Relational Programming)
|
|||
|
|
endobj
|
|||
|
|
197 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.9.1) >>
|
|||
|
|
endobj
|
|||
|
|
200 0 obj
|
|||
|
|
(Architecture)
|
|||
|
|
endobj
|
|||
|
|
201 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.1.1) >>
|
|||
|
|
endobj
|
|||
|
|
204 0 obj
|
|||
|
|
(Essential State \(``State''\))
|
|||
|
|
endobj
|
|||
|
|
205 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.1.2) >>
|
|||
|
|
endobj
|
|||
|
|
208 0 obj
|
|||
|
|
(Essential Logic \(``Behaviour''\))
|
|||
|
|
endobj
|
|||
|
|
209 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.1.3) >>
|
|||
|
|
endobj
|
|||
|
|
212 0 obj
|
|||
|
|
(Accidental State and Control \(``Performance''\))
|
|||
|
|
endobj
|
|||
|
|
213 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.1.4) >>
|
|||
|
|
endobj
|
|||
|
|
216 0 obj
|
|||
|
|
(Other \(Interfacing\))
|
|||
|
|
endobj
|
|||
|
|
217 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.1.5) >>
|
|||
|
|
endobj
|
|||
|
|
220 0 obj
|
|||
|
|
(Infrastructure)
|
|||
|
|
endobj
|
|||
|
|
221 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.9.2) >>
|
|||
|
|
endobj
|
|||
|
|
224 0 obj
|
|||
|
|
(Benefits of this approach)
|
|||
|
|
endobj
|
|||
|
|
225 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.2.1) >>
|
|||
|
|
endobj
|
|||
|
|
228 0 obj
|
|||
|
|
(Benefits for State)
|
|||
|
|
endobj
|
|||
|
|
229 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.2.2) >>
|
|||
|
|
endobj
|
|||
|
|
232 0 obj
|
|||
|
|
(Benefits for Control)
|
|||
|
|
endobj
|
|||
|
|
233 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.2.3) >>
|
|||
|
|
endobj
|
|||
|
|
236 0 obj
|
|||
|
|
(Benefits for Code Volume)
|
|||
|
|
endobj
|
|||
|
|
237 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.2.4) >>
|
|||
|
|
endobj
|
|||
|
|
240 0 obj
|
|||
|
|
(Benefits for Data Abstraction)
|
|||
|
|
endobj
|
|||
|
|
241 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.9.2.5) >>
|
|||
|
|
endobj
|
|||
|
|
244 0 obj
|
|||
|
|
(Other Benefits)
|
|||
|
|
endobj
|
|||
|
|
245 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.9.3) >>
|
|||
|
|
endobj
|
|||
|
|
248 0 obj
|
|||
|
|
(Types)
|
|||
|
|
endobj
|
|||
|
|
249 0 obj
|
|||
|
|
<< /S /GoTo /D (section.10) >>
|
|||
|
|
endobj
|
|||
|
|
252 0 obj
|
|||
|
|
(Example of an FRP system)
|
|||
|
|
endobj
|
|||
|
|
253 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.10.1) >>
|
|||
|
|
endobj
|
|||
|
|
256 0 obj
|
|||
|
|
(User-defined Types)
|
|||
|
|
endobj
|
|||
|
|
257 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.10.2) >>
|
|||
|
|
endobj
|
|||
|
|
260 0 obj
|
|||
|
|
(Essential State)
|
|||
|
|
endobj
|
|||
|
|
261 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.10.3) >>
|
|||
|
|
endobj
|
|||
|
|
264 0 obj
|
|||
|
|
(Essential Logic)
|
|||
|
|
endobj
|
|||
|
|
265 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.10.3.1) >>
|
|||
|
|
endobj
|
|||
|
|
268 0 obj
|
|||
|
|
(Functions)
|
|||
|
|
endobj
|
|||
|
|
269 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.10.3.2) >>
|
|||
|
|
endobj
|
|||
|
|
272 0 obj
|
|||
|
|
(Derived Relations)
|
|||
|
|
endobj
|
|||
|
|
273 0 obj
|
|||
|
|
<< /S /GoTo /D (subsubsection.10.3.3) >>
|
|||
|
|
endobj
|
|||
|
|
276 0 obj
|
|||
|
|
(Integrity)
|
|||
|
|
endobj
|
|||
|
|
277 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.10.4) >>
|
|||
|
|
endobj
|
|||
|
|
280 0 obj
|
|||
|
|
(Accidental State and Control)
|
|||
|
|
endobj
|
|||
|
|
281 0 obj
|
|||
|
|
<< /S /GoTo /D (subsection.10.5) >>
|
|||
|
|
endobj
|
|||
|
|
284 0 obj
|
|||
|
|
(Other)
|
|||
|
|
endobj
|
|||
|
|
285 0 obj
|
|||
|
|
<< /S /GoTo /D (section.11) >>
|
|||
|
|
endobj
|
|||
|
|
288 0 obj
|
|||
|
|
(Related Work)
|
|||
|
|
endobj
|
|||
|
|
289 0 obj
|
|||
|
|
<< /S /GoTo /D (section.12) >>
|
|||
|
|
endobj
|
|||
|
|
292 0 obj
|
|||
|
|
(Conclusions)
|
|||
|
|
endobj
|
|||
|
|
293 0 obj
|
|||
|
|
<< /S /GoTo /D [294 0 R /Fit ] >>
|
|||
|
|
endobj
|
|||
|
|
296 0 obj <<
|
|||
|
|
/Length 2319
|
|||
|
|
/Filter /FlateDecode
|
|||
|
|
>>
|
|||
|
|
stream
|
|||
|
|
x<EFBFBD>}XY<58><59><EFBFBD>~<7E>_a<5F>%2<>bDR<44><52><EFBFBD><EFBFBD>E6H<36>dAy<><79>٢m<D9A2><6D>0$<24>{z1?>uQ<75><51>ޠ<EFBFBD><16>b<EFBFBD>ί<EFBFBD>ֻ<04><>N<1B><><EFBFBD><EFBFBD>eE<65><45><EFBFBD><EFBFBD>c<EFBFBD>!ٝa<D99D><61><1F><>XW<58><57>9?ٌMZ<4D>v<><76>TY<54><59>4<EFBFBD><34>֩.<2E><>$W<>$<24><><EFBFBD><EFBFBD>/?<3F>b<EFBFBD>se<73>۽<EFBFBD>v&<26>J;<3B>D/<2F>/<2F>O<EFBFBD>y<1F><>D<EFBFBD>^G'<1E>σ<>}^Dl<><<3C>y먁<><EBA881><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>JG<4A>c<EFBFBD>n5c<13>2<EFBFBD><32>O<>p<EFBFBD>dѿ<64>ɷ<EFBFBD><1D><>b<EFBFBD>)<29>-<2D>V<EFBFBD>iN<69><4E>}l<><6C><EFBFBD><EFBFBD>wBW<42>H<EFBFBD>U<EFBFBD><55><EFBFBD>v<EFBFBD>*20<32>z<EFBFBD><7A>=<3D><>~<14>x <09>y<EFBFBD>;<3B>Iyw<79><77>vh<76><68><EFBFBD>M_7g<37>:<3A>oZՓ<5A>3sZ<73>99@ْ<><D992><11>!<21><>'n<><6E>Ηf0<66><0E>yd`<60>$<19><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7&<26><><EFBFBD>v<EFBFBD><76><EFBFBD>re<72><65><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>h<EFBFBD>]<5D><>̒<0B>L<EFBFBD>/Q<><51><1E>y<EFBFBD><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4Qyjvi<76><69><14><>I<EFBFBD><19>
|
|||
|
|
<EFBFBD><EFBFBD><EFBFBD>ԙQ.y<><79>$<24>F<1C>*<2A><>@<40><><EFBFBD>0t<30><74>i<7F><69>)"<22><>uQ3<51>7<EFBFBD><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>e<EFBFBD>o蓑<6F>j<EFBFBD>̧DgG4<47>
f<><66>.<2E>(<28><>#<17><><EFBFBD>N=ͧ<17><><15><>v<EFBFBD><76><12>)<29>G
|
|||
|
|
_ eP<65><50><EFBFBD>5e<35><65>a =N<>m+<0C>3<EFBFBD><33><13>R<EFBFBD><16>7
'<12>
<0A>UcXE<58><45>i<EFBFBD>ɢ<>q<EFBFBD>&Q6<1A>5<>8~kz<6B><7A>G><3E>$C
<0A>'^ <20><>ϲa<CFB2><19>w<EFBFBD>хsє<73>O<EFBFBD>;e<><65>ށ-<2D><><EFBFBD>s<EFBFBD>2<EFBFBD>Ɓ)<29><03>HB<48><42><EFBFBD><EFBFBD>⑥<EFBFBD><E291A5>]<5D><><EFBFBD><04><>g<EFBFBD> |