Disclaimer: I’m still pretty green with functional programming. This is me working out my own understanding. Wikipedia defines Functional Programming (FP) this way: “functional programming is a programming paradigm that treats computations as the evaluation of mathematical functions and avoids state and mutable data.” [reference] What is Functional Programming? - Christopher Bennage
What is Functional Programming? Part 2, Currying - Christopher Bennage In my last post , I provided a list of concepts that I found to be characteristic of functional languages. We’ve talked bout the first three so far. First Class Functions Higher Order Functions Pure Functions Currying or Partial Application Recursion Pattern Matching Memoization Currying
This Kata was presented at XP2006 by EmmanuelGaillot and ChristopheThibaut ? . Problem Description User Story 1 You work for a bank, which has recently purchased an ingenious machine to assist in reading letters and faxes sent in by branch offices. The machine scans the paper documents, and produces a file with a number of entries which each look like this: Coding Dojo Wiki: KataBankOCR
About this Kata This Kata is presented in Robert C.. Martin's book "Clean Code", chapter 14. Coding Dojo Wiki: KataArgs
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)by Joel Spolsky Wednesday, October 08, 2003 Ever wonder about that mysterious Content-Type tag?
Why: A Tale Of A Post-Modern Genius - Smashing Magazine Why the Lucky Stiff (or _Why for short) was one of the brightest and most inspiring programmers in activity. He became famous through a series of blogs and through the incredible amount of open-source projects that he maintained over the course of more than seven years. _Why’s popularity grew along with the Ruby programming language’s popularity. When the Rails hype took off in 2005, a great number of young developers started looking to learn about Ruby, and that’s when most of them found Why’s (Poignant) Guide to Ruby , a Creative Commons book in both HTML and PDF that embodied all of its author’s characteristics: an uneasy artistic mind with a different take on what programming is all about.
Katas and exercises for self-improvement: TDD Problems - A variety of problems from simple to hard focused on TDD Project Euler - Algorithmic and math problems Coding Dojo Kata Catalog - A wiki listing of katas Uncle Bob: Bowling Game - Bob Martin's bowling kata with Powerpoint walkthrough Uncle Bob: Prime Factors - Bob Martin's prime factors kata with Powerpoint walkthrough CodeKata - Over 20 katas from Pragmatic Programmer author Dave Thomas Video / Screencast: KataCasts.com - Recordings of katas, typically with music. Katas : Hudson Software Craftsmanship