GithubHelp home page GithubHelp logo

fp_scala_for_mortals's Introduction

Functional Programming in Scala for mere mortals

Why?

This is my run through the Functional Programming in Scala https://www.manning.com/books/functional-programming-in-scala book. Rather than use exercise files that come with the book (which I've done before), I'm going to be going exercise by exercise at a leisurly pace and writing down my notes and what aspects of Functional Programming I found hard to grasp and why they were hard to grasp.

I took the Coursera course Functional Programming in Scala based on the book, as well as being a member of a study group going through the book a second time. In spite of this I found that there were some concepts that I either did not grasp or did not grasp deeply enough for them to stick. And often times the gaps in knowledge surfaced when I was looking at some existing Scala code (i.e Twitter Finagle https://twitter.github.io/finagle/). So this is my attempt to 'Understand All The Things!.

I'm going to go exercise by exercise. I will post notes on each exercise and when I get confused or stuck, find additional material to get me unstuck and document why I got stuck (every roadblock is underpinned by a wrong/faulty assumption) and what resources I read to get myself unstuck. The book has 16 chapters so my initial goal is to go at the pace of about a chapter a week.

The rules

  • Each exercise must be completed and correct before moving onto the next one.
  • Each exercise must have tests/assertions where possible.
  • All code will be written without the help of an IDE where possible(this is the thinking behind Zed Shaw's series of books Learn X the Hard Way)
  • Code will be run from the command line with scala exercise_3.scala

fp_scala_for_mortals's People

Contributors

wkimeria avatar

Stargazers

 avatar  avatar

Watchers

 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.