Functional Programming in JavaScript



Рейтинг:
Добавить в избранные:
Автор:
Категория: Программирование
Страниц: 120

1. Functional Programming in JavaScript
2. Credits
3. About the Author
4. About the Reviewers
5. www.PacktPub.com
6. Support files, eBooks, discount offers and more
7. Why Subscribe?
8. Free Access for Packt account holders
9. Preface
10. What this book covers
11. What you need for this book
12. Who this book is for
13. Conventions
14. Reader feedback
15. Customer support
16. Downloading the example code
17. Errata
18. Piracy
19. Questions
20. 1. The Powers of JavaScript's Functional Side – a Demonstration
21. Introduction
22. The demonstration
23. The application – an e-commerce website
24. Imperative methods
25. Functional programming
26. Summary
27. 2. Fundamentals of Functional Programming
28. Functional programming languages
29. What makes a language functional?
30. Advantages
31. Functional programming in a nonfunctional world
32. Working with functions
33. Self-invoking functions and closures
34. Higher-order functions
35. Pure functions
36. Anonymous functions
37. Method chains
38. Recursion
39. Lazy evaluation
40. The functional programmer's toolkit
41. Callbacks
42. Array.prototype.map()
43. Array.prototype.filter()
44. Array.prototype.reduce()
45. Honorable mentions
46. Summary
47. 3. Setting Up the Functional Programming Environment
48. Introduction
49. Functional libraries for JavaScript
50. Underscore.js
51. Fantasy Land
52. Bilby.js
53. Lazy.js
54. Bacon.js
55. Honorable mentions
56. Development and production environments
57. Browsers
58. Server-side JavaScript
59. CLI
60. Using functional libraries with other JavaScript modules
61. Functional languages that compile into JavaScript
62. Summary
63. 4. Implementing Functional Programming Techniques in JavaScript
64. Partial function application and currying
65. Function manipulation
66. Partial application
67. Currying
68. Function composition
69. Compose
70. Compositions versus chains
71. Programming with compose
72. Mostly functional programming
73. Handling events
74. Functional reactive programming
75. Reactivity
76. Putting it all together
77. Summary
78. 5. Category Theory
79. Category theory
80. Category theory in a nutshell
81. Type safety
82. Functors
83. Creating functors
84. Arrays and functors
85. Function compositions, revisited
86. Monads
87. Maybes
88. Promises
89. Lenses
90. jQuery is a monad
91. Implementing categories
92. Summary
93. 6. Advanced Topics and Pitfalls in JavaScript
94. Recursion
95. Tail recursion
96. Trampolining
97. The Y-combinator
98. Variable scope
99. Scope resolutions
100. Closures
101. Gotchas
102. Function declarations versus function expressions versus the function constructor
103. Function declarations
104. Function expressions
105. The function constructor
106. Unpredictable behavior
107. Summary
108. 7. Functional and Object-oriented Programming in JavaScript
109. JavaScript – the multi-paradigm language
110. JavaScript's object-oriented implementation – using prototypes
111. Inheritance
112. JavaScript's prototype chain
113. Inheritance in JavaScript and the Object.create() method
114. Mixing functional and object-oriented programming in JavaScript
115. Functional inheritance
116. Mixins
117. Summary
118. A. Common Functions for Functional Programming in JavaScript
119. B. Glossary of Terms
120. Index
bsn
thank
Vesa Karvonen
I hope you don't mind, but I’d like to point you and your readers to my high-performance optics library for JavaScript that is in production use in multiple projects, has comprehensive support for partial optics and interactive documentation: https://calmm-js.github.io/partial.lenses/ (this takes a moment to load — be patient!)