git @ Cat's Eye Technologies The-Glosscubator / ce9846a
Rate a Functional Programming paper, put commentary on one other. Chris Pressey 1 year, 7 days ago
5 changed file(s) with 29 addition(s) and 12 deletion(s). Raw diff Collapse all Expand all
2828
2929 Total Functional Programming (online @ [www.jucs.org](https://www.jucs.org/jucs_10_7/total_functional_programming/jucs_10_07_0751_0768_turner.pdf))
3030
31 [Turner, Bird, Eratosthenes: An Eternal Burning Thread](https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/erato.pdf)
31 Turner, Bird, Eratosthenes: An Eternal Burning Thread (online @ [www.cs.ox.ac.uk](https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/erato.pdf))
3232
3333 ### Books
3434
2727
2828 * authors: Jeremy Gibbons
2929 * date: 2021
30 * url: https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/erato.pdf
30 * online @ [www.cs.ox.ac.uk](https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/erato.pdf)
3131
32 ,
33
32 .
3737
3838 * rating: 2
3939
40 .
40 It's a very interesting paper and you should read it. I should maybe
41 write a more cogent summary of it here at some point. I would take
42 some issue with the conclusion about a "dichotomy of language design"
43 near the very end of the paper. Due to the Halting problem, there are
44 indeed programs that are in R (they always halt) but we cannot
45 prove they are in R; but I don't see this affecting a "dichotomy in
46 language design" very materially, for several reasons:
47
48 * a program that is guaranteed to terminate might still take an
49 obscenely long time to terminate
50 * very few problems of practical interest require algorithms
51 in "large" complexity classes like TOWER; yet even these are
52 guaranteed to terminate
53 * systems with the full power of Turing machines are (ironically) the
54 _easiest_ systems to define; everything "safer" requires more effort
55 * you do need the full power of a Turing machine to implement a TM
56 interpreter, but TMs are not the only "universal" computational class;
57 there are "universal" CFLs and "universal" System F intepreters too
58 * there are algorithms that are useful enough that we
59 use them even absent of a proof that they are terminating:
60 for example, higher-order unification.
4161
4262 ### Turner, Bird, Eratosthenes: An Eternal Burning Thread
4363
44 * rating: TODO
64 * rating: 1
4565
46 .
66 *Often* it's straightforward but *sometimes* it's tricky
67 to prove that recursive functions terminate or
68 that corecursive functions are productive. I agree.
4769
4870 ### Functors, Applicatives, And Monads In Pictures - adit.io
4971
1515 Of these, [**102** have the highest rating](by-rating/Top-rated.md),
1616 [**27** are considered classics](by-rating/Classic.md),
1717 [**47** are considered very interesting](by-rating/Very%20Interesting.md),
18 while [**77** are yet to be rated](by-rating/Unrated.md).
18 while [**76** are yet to be rated](by-rating/Unrated.md).
1919
2020 <!-- /TOTALS -->
2121
128128 * [Introduction to the Calculus of Inductive Constructions](https://inria.hal.science/hal-01094195/document)
129129 * [The Calculus of Inductive Constructions](https://www.cs.uoregon.edu/research/summerschool/summer11/lectures/oplss-herbelin1.pdf)
130130
131 ### Functional Programming
132
133 * [Turner, Bird, Eratosthenes: An Eternal Burning Thread](https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/erato.pdf)
134
135131 ### Incompleteness
136132
137133 * A Simple Character String Proof of the \"True but Unprovable\" Version of Goedel\'s First Incompleteness Theorem ([arxiv.org](https://arxiv.org/abs/1402.7253))