My personal exercises from Kyle Simpson functional light book.
This is a repository of my personal exercises and projects for Functional Programming as well as other JS practice files.
I am currently on the journey of becoming a better programmer (and not a noob) and figured it was time to explore functional programming.
The collection of exercise will be based on FP learning materials including:
I encourage anyone to fork this repo and learn along with me or make changes of your own. I am a fairly new programmer so some exercises will be “kind of” practical. I have also included very meaningful exercises, projects and examples. Look over them carefully and try to grasp the FP concepts.
I can’t believe it has been 4 years sense my last update to this. I definitely want to continue this repo and will add more short projects that involve:
RxJS “A library for composing asynchronous and event-based programs by using observable sequences”. Lodash for events… literally.
React & Angular (maybe)
All files are completely JS so, I would prefer that you had Node (latest version), that way all example code can be run on Node. However, no NPMs or Node is necessary (node_modules, Ramda.js, Ramda-fantasy, and Flow.js have been recently installed). The majority of the code should be able to run in the browser playgrounds such as Codepen, JSFiddle etc…
If you wish to install these tools I encourage you to look into their documentation and follow along with the entire install and build process.
Besides the books I have marked out above I suggest trying out a true functional language. My pick would be Elm. This is a great way to learn the benefits, architecture and understanding behind FP.
If you take the Elm path (which I highly suggest you do) check out my repo on elm, “Elm-training”.
To go even deeper and get a great sense of FP and the power of Elm, checkout James Moore’s Elm Course for Beginners. This will definitely jump start you in FP and Elm concepts.
I will also leave you with a much better list of resources for JS in general https://github.com/javascript-society/javascript-path
Send all request, questions and complaints as “Issues”. For example if you want to see my .babelrc file send a request for it as an “Issue”.