├── .gitignore ├── INSTRUCTIONS.md ├── LICENSE ├── README.md ├── chapters ├── chapter_01_fp_fundamentals │ ├── 01_pure_vs_inpure.ts │ ├── 02_side_effects.ts │ ├── 03_declarative_vs_imperative.ts │ ├── 04_immutability.ts │ ├── 05_trailing_comas.ts │ ├── 06_first_class_citizens.ts │ ├── 07_lambdas.ts │ ├── 08_function_arity.ts │ ├── 09_higher_order_functions.ts │ └── 10_lazyness.ts ├── chapter_02_mastering_functions │ ├── 01_function_types.ts │ ├── 02_named_anonymous_func.ts │ ├── 03_func_declaration_expressions.ts │ ├── 04_optional_parameters.ts │ ├── 05_default_parameters.ts │ ├── 06_rest_parameters.ts │ ├── 07_function_overloading.ts │ ├── 08_specialized_overloading_signature.ts │ ├── 09_function_scope.ts │ ├── 10_iife.ts │ └── 11_tag_function.ts ├── chapter_03_mastering_async_programming │ ├── 01_callbacks_and_higher_order_functions.ts │ ├── 02_arrow_functions.ts │ ├── 03_callbackhell.ts │ ├── 04_promises.ts │ ├── 05_covariant_checking_in_cb_parameters.ts │ ├── 06_generators.ts │ ├── 07_async_await.ts │ ├── 08_asynchronous_generators.ts │ ├── 09_for_await_of.ts │ └── 10_delegating_to_a_generator.ts ├── chapter_04_the_event_loop_and_this_operator │ ├── 01_environment.ts │ ├── 02_event_loop.ts │ ├── 03_this_operator.ts │ └── 04_call_bind_apply.ts ├── chapter_05_closures_and_prototypes │ ├── 01_prototypes.ts │ ├── 02_instance_and_class_props.ts │ ├── 03_prototypal_inheritance.ts │ ├── 04_prototype_chain.ts │ └── 05_closures.ts ├── chapter_06_fp_techniques │ ├── 01_composition.ts │ ├── 02_partial_application.ts │ ├── 03_currying.ts │ ├── 04_strinct_bind.ts │ ├── 05_pipes.ts │ ├── 06_point_fee_style.ts │ ├── 07_recursion.ts │ └── 08_pattern_matching.ts ├── chapter_07_category_theory │ ├── 01_functors.ts │ ├── 02_applicative.ts │ ├── 03_maybe.ts │ ├── 04_either.ts │ └── 05_monads.ts ├── chapter_08_optics_immutability_laziness │ ├── 01_immutability.ts │ ├── 02_lenses.ts │ ├── 03_prisms.ts │ └── 04_laziness.ts ├── chapter_09_functional_reactive_programming │ ├── 01_observer.ts │ ├── 02_iterator.ts │ ├── 03_of.ts │ ├── 04_from.ts │ ├── 05_interval.ts │ ├── 06_from_event.ts │ ├── 07_bind_callback.ts │ ├── 08_bind_node_callback.ts │ ├── 09_from_promise.ts │ ├── 10_max.ts │ ├── 11_every.ts │ ├── 12_find.ts │ ├── 13_filter.ts │ ├── 14_map.ts │ ├── 15_reduce.ts │ ├── 16_throttle.ts │ ├── 17_merge.ts │ └── 18_zip.ts └── chapter_10_real_world_fp │ ├── 01_composition.ts │ ├── 02_currying.ts │ ├── 03_lenses.ts │ ├── 04_immutable.ts │ ├── 05_immer.ts │ └── 06_funfix.ts ├── media ├── playground_code.png ├── playground_console.png └── playground_options.png ├── package.json └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules -------------------------------------------------------------------------------- /INSTRUCTIONS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/INSTRUCTIONS.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/README.md -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/01_pure_vs_inpure.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/01_pure_vs_inpure.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/02_side_effects.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/02_side_effects.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/03_declarative_vs_imperative.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/03_declarative_vs_imperative.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/04_immutability.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/04_immutability.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/05_trailing_comas.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/05_trailing_comas.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/06_first_class_citizens.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/06_first_class_citizens.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/07_lambdas.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/07_lambdas.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/08_function_arity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/08_function_arity.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/09_higher_order_functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/09_higher_order_functions.ts -------------------------------------------------------------------------------- /chapters/chapter_01_fp_fundamentals/10_lazyness.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_01_fp_fundamentals/10_lazyness.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/01_function_types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/01_function_types.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/02_named_anonymous_func.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/02_named_anonymous_func.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/03_func_declaration_expressions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/03_func_declaration_expressions.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/04_optional_parameters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/04_optional_parameters.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/05_default_parameters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/05_default_parameters.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/06_rest_parameters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/06_rest_parameters.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/07_function_overloading.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/07_function_overloading.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/08_specialized_overloading_signature.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/08_specialized_overloading_signature.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/09_function_scope.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/09_function_scope.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/10_iife.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/10_iife.ts -------------------------------------------------------------------------------- /chapters/chapter_02_mastering_functions/11_tag_function.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_02_mastering_functions/11_tag_function.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/01_callbacks_and_higher_order_functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/01_callbacks_and_higher_order_functions.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/02_arrow_functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/02_arrow_functions.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/03_callbackhell.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/03_callbackhell.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/04_promises.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/04_promises.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/05_covariant_checking_in_cb_parameters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/05_covariant_checking_in_cb_parameters.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/06_generators.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/06_generators.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/07_async_await.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/07_async_await.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/08_asynchronous_generators.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/08_asynchronous_generators.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/09_for_await_of.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/09_for_await_of.ts -------------------------------------------------------------------------------- /chapters/chapter_03_mastering_async_programming/10_delegating_to_a_generator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_03_mastering_async_programming/10_delegating_to_a_generator.ts -------------------------------------------------------------------------------- /chapters/chapter_04_the_event_loop_and_this_operator/01_environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_04_the_event_loop_and_this_operator/01_environment.ts -------------------------------------------------------------------------------- /chapters/chapter_04_the_event_loop_and_this_operator/02_event_loop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_04_the_event_loop_and_this_operator/02_event_loop.ts -------------------------------------------------------------------------------- /chapters/chapter_04_the_event_loop_and_this_operator/03_this_operator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_04_the_event_loop_and_this_operator/03_this_operator.ts -------------------------------------------------------------------------------- /chapters/chapter_04_the_event_loop_and_this_operator/04_call_bind_apply.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_04_the_event_loop_and_this_operator/04_call_bind_apply.ts -------------------------------------------------------------------------------- /chapters/chapter_05_closures_and_prototypes/01_prototypes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_05_closures_and_prototypes/01_prototypes.ts -------------------------------------------------------------------------------- /chapters/chapter_05_closures_and_prototypes/02_instance_and_class_props.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_05_closures_and_prototypes/02_instance_and_class_props.ts -------------------------------------------------------------------------------- /chapters/chapter_05_closures_and_prototypes/03_prototypal_inheritance.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_05_closures_and_prototypes/03_prototypal_inheritance.ts -------------------------------------------------------------------------------- /chapters/chapter_05_closures_and_prototypes/04_prototype_chain.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_05_closures_and_prototypes/04_prototype_chain.ts -------------------------------------------------------------------------------- /chapters/chapter_05_closures_and_prototypes/05_closures.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_05_closures_and_prototypes/05_closures.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/01_composition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/01_composition.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/02_partial_application.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/02_partial_application.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/03_currying.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/03_currying.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/04_strinct_bind.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/04_strinct_bind.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/05_pipes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/05_pipes.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/06_point_fee_style.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/06_point_fee_style.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/07_recursion.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/07_recursion.ts -------------------------------------------------------------------------------- /chapters/chapter_06_fp_techniques/08_pattern_matching.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_06_fp_techniques/08_pattern_matching.ts -------------------------------------------------------------------------------- /chapters/chapter_07_category_theory/01_functors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_07_category_theory/01_functors.ts -------------------------------------------------------------------------------- /chapters/chapter_07_category_theory/02_applicative.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_07_category_theory/02_applicative.ts -------------------------------------------------------------------------------- /chapters/chapter_07_category_theory/03_maybe.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_07_category_theory/03_maybe.ts -------------------------------------------------------------------------------- /chapters/chapter_07_category_theory/04_either.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_07_category_theory/04_either.ts -------------------------------------------------------------------------------- /chapters/chapter_07_category_theory/05_monads.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_07_category_theory/05_monads.ts -------------------------------------------------------------------------------- /chapters/chapter_08_optics_immutability_laziness/01_immutability.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_08_optics_immutability_laziness/01_immutability.ts -------------------------------------------------------------------------------- /chapters/chapter_08_optics_immutability_laziness/02_lenses.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_08_optics_immutability_laziness/02_lenses.ts -------------------------------------------------------------------------------- /chapters/chapter_08_optics_immutability_laziness/03_prisms.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_08_optics_immutability_laziness/03_prisms.ts -------------------------------------------------------------------------------- /chapters/chapter_08_optics_immutability_laziness/04_laziness.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_08_optics_immutability_laziness/04_laziness.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/01_observer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/01_observer.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/02_iterator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/02_iterator.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/03_of.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/03_of.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/04_from.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/04_from.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/05_interval.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/05_interval.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/06_from_event.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/06_from_event.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/07_bind_callback.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/07_bind_callback.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/08_bind_node_callback.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/08_bind_node_callback.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/09_from_promise.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/09_from_promise.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/10_max.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/10_max.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/11_every.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/11_every.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/12_find.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/12_find.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/13_filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/13_filter.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/14_map.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/14_map.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/15_reduce.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/15_reduce.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/16_throttle.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/16_throttle.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/17_merge.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/17_merge.ts -------------------------------------------------------------------------------- /chapters/chapter_09_functional_reactive_programming/18_zip.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_09_functional_reactive_programming/18_zip.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/01_composition.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/01_composition.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/02_currying.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/02_currying.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/03_lenses.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/03_lenses.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/04_immutable.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/04_immutable.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/05_immer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/05_immer.ts -------------------------------------------------------------------------------- /chapters/chapter_10_real_world_fp/06_funfix.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/chapters/chapter_10_real_world_fp/06_funfix.ts -------------------------------------------------------------------------------- /media/playground_code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/media/playground_code.png -------------------------------------------------------------------------------- /media/playground_console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/media/playground_console.png -------------------------------------------------------------------------------- /media/playground_options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/media/playground_options.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/package.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Hands-On-Functional-Programming-with-Typescript/HEAD/tsconfig.json --------------------------------------------------------------------------------