Task: Introduction to the workshop
Information
Welcome to a workshop for learning functional programming in JavaScript.
This workshop runs in your browser. Assignments are written as tests that you need to make pass. When you have all passing test you can move on to the next task. There will be additional information in the comments.
If you at any time need to freshen up your JS-fu, start any Google search with “mdn” and you will always end up at the amazing Mozilla Developer Network, which has the best JS explanations around.
Tasks
- Part 0: Introduction to the workshop [Active]
- Part 1: A functions context
- Part 1: A functions arguments
- Part 1: Functions and prototypes
- Part 2: Applicative programming
- Part 2: Make new collections with map
- Part 2: Make new collections with filter
- Part 2: Make new collections with reduce
- Part 2: Using helper liberaries
- Part 2: Point-free style
- Part 2: Applicative functions with context
- Part 3: Function factories
- Part 3: Higher order functions
- Part 3: Functions with functions
- Part 3: Fluent interfaces
- Part 3: Function arity
- Part 4: Partial application
- Part 4: Create functions from functions
- Part 5: Currying
- Part 5: Composition
- Part 5: Pipelines
- Part 5: Case - Parse URL
- Part 6: Shared state
- Part 7: Working with collections
- Part 7: Done
Help
Available globals
_
: Lo-dash.jslog
: log-command that logs to view and console
Testing
describe
: new test suite (mocha)it
: new test (mocha)xit
: pending test (mocha)xdescribe
: pending scenario (mocha)before/after
: run code before or after all tests (mocha)beforeEach/afterEach
: run code before or after each tests (mocha)chai
: chai.js assertion library