GithubHelp home page GithubHelp logo

rafagarcia / functional-light-js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from getify/functional-light-js

0.0 2.0 0.0 22.05 MB

Pragmatic, balanced FP in JavaScript. @FLJSBook on twitter.

Home Page:

License: Other

JavaScript 89.34% HTML 6.31% CSS 4.35%

functional-light-js's Introduction

Functional-Light JavaScript

License: CC BY-NC-ND 4.0

Book Cover

This book is a balanced, pragmatic look at FP in JavaScript. The first edition is now complete.

Buy on Leanpub

"Functional-Light JavaScript" explores the core principles of functional programming (FP) as they are applied to JavaScript. But what makes this book different is that we approach these principles without drowning in all the heavy terminology. We look at a subset of FP foundational concepts that I call "Functional-Light Programming" (FLP) and apply it to JavaScript.

Note: Despite the word "Light" in the title, I do not consider or recommend this book as a "beginner", "easy", or "intro" book on the topic. This book is rigorous and full of gritty detail; it expects a solid foundation of JS knowledge before diving in. "Light" means limited in scope; instead of being more broad, this book goes much deeper into each topic than you typically find in other FP-JavaScript books.

Let's face it: unless you're already a member of the FP cool kids club (I'm not!), a statement like, "a monad is just a monoid in the category of endofunctors", just doesn't mean anything useful to us.

That's not to say the terms are meaningless or that FPrs are bad for using them. Once you graduate from Functional-Light, you'll maybe/hopefully want to study FP more formally, and you'll certainly have plenty of exposure to what they mean and why.

But I want you to be able to apply some of the fundamentals of FP to your JavaScript now, because I believe it will help you write better, more reasonable code.

To read more about the motivations and perspective behind this book, check out the Preface.


Table of Contents


This book has been published and is now available for purchase on Leanpub. I'll also be trying to work out an option to sell print book copies, but that part is still uncertain.

Buy on Leanpub

If you'd like to contribute financially towards the effort (or any of my other OSS work) aside from purchasing the book, I do have a patreon that I would always appreciate your generosity towards.


In-person Training

The content for this book derives heavily from a training workshop I teach professionally (in both public and private-corporate workshop format) of the same name.

If you like this content and would like to contact me regarding conducting training on this, or other various JS/HTML5/Node.js topics, please reach out to me through email: getify @ gmail

Online Video Training

I also have several JS training courses available in on-demand video format. I teach courses through Frontend Masters, like my Functional-Light JavaScript v2 workshop. Some of my courses are also available on PluralSight.


Any contributions you make to this effort are of course greatly appreciated.

But PLEASE read the Contributions Guidelines carefully before submitting a PR.

License & Copyright

The materials herein are all (c) 2016-2017 Kyle Simpson.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 4.0 Unported License.

functional-light-js's People


adriano-di-giovanni avatar alan2207 avatar christianhg avatar diaomouren avatar dkab avatar egdbear avatar exiadbq avatar exploremqt avatar fcasad avatar getify avatar hingsir avatar joehetfield avatar jtassia avatar juliomatcom avatar nickpapasavvas avatar pertrai1 avatar pobusama avatar rajikaimal avatar rkichenama avatar rus0000 avatar samouss avatar stevemao avatar tbroadley avatar uldissturms avatar vivaxy avatar


 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.