Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
CS 696 Functional Programming and DesignFall Semester, 2015
Doc 24 Debugging & Scientific Method Dec 1, 2015
Copyright ©, All rights reserved. 2015 SDSU & Roger Whitney, 5500 Campanile Drive, San Diego, CA 92182-7700 USA. OpenContent (http://www.opencontent.org/openpub/) license defines the copyright on this document.
Tuesday, December 1, 15
2
Tuesday, December 1, 15
3
Tuesday, December 1, 15
Talk At:
4
https://www.youtube.com/watch?v=FihU5JxmnBg
Tuesday, December 1, 15
5
Tuesday, December 1, 15
6
Tuesday, December 1, 15
7
Tuesday, December 1, 15
8
Tuesday, December 1, 15
9
Tuesday, December 1, 15
10
Tuesday, December 1, 15
11
Tuesday, December 1, 15
12
Tuesday, December 1, 15
13
Tuesday, December 1, 15
14
Tuesday, December 1, 15
15
Tuesday, December 1, 15
16
Tuesday, December 1, 15
17
Tuesday, December 1, 15
18
Tuesday, December 1, 15
19
Tuesday, December 1, 15
20
Tuesday, December 1, 15
21
Scientific Method is more general and powerful than all the others
Tuesday, December 1, 15
22
Tuesday, December 1, 15
Bottom Up REPL Check
23
For small problems
Take inner most form and evaluate it in the REPL
Replace the result in the next most inner form and evaluate that in REPL
Repeat
Tuesday, December 1, 15
Bottom Up REPL Check
24
(def partial-join (partial (clojure.string/join “,” )))
(clojure.string/join “,” ) => “,”
(def partial-join “,”)
(partial ",") => “,”
Tuesday, December 1, 15
25
Tuesday, December 1, 15
26
Tuesday, December 1, 15
27
The $100 slide
Tuesday, December 1, 15
28
Tuesday, December 1, 15
29
Tuesday, December 1, 15
Bisect the Problem
30
Divide & Conquer
Tuesday, December 1, 15
31
Trying random stuff is not being driven by hypothesis
Tuesday, December 1, 15
32
Tuesday, December 1, 15
33
Tuesday, December 1, 15
34
Tuesday, December 1, 15
35
Tuesday, December 1, 15
36
(Exception)
Tuesday, December 1, 15
37
Tuesday, December 1, 15