# Functional Programming: Links, News And Resources (2)

Functional Style of Programming
http://pragprog.com/magazines/2011-12/scala-for-the-intrigued

Functional Programming Exchange 2012
http://skillsmatter.com/event/scala/functional-programming-exchange-2012/ac-3451

Functional Thinking
http://www.infoq.com/presentations/Functional-Thinking
Neal Ford emphasizes the fact that functional programming uses a different way of solving a problem, thinking about the results rather than the steps to make.

Bind vs Curry in JS
http://josephmoniz.github.com/blog/2011/12/26/bind-vs-curry/

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.3299

2011 – The year that was
http://debasishg.blogspot.com.ar/2012/01/2011-year-that-was.html

Monad Transformers and Modular Interpreters (1995)
http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.17.268

http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.38.9875
From the type of a polymorphic function we can derive a theorem that it satisfies. Every function of the same type satisfies the same theorem. This provides a free source of useful theorems, courtesy of Reynolds’ abstraction theorem for the polymorphic lambda calculus.

J Programming Language
http://www.jsoftware.com/source.htm

Sigplan APL
http://www.sigapl.org/

APL
http://groups.engin.umd.umich.edu/CIS/course.des/cis400/apl/apl.html
APL stands for “A Programming Language.” It was created in the 1960’s by Ken Iverson and his colleagues at IBM. Mathematically inspired, its main purpose was to serve as a powerful executable notation for mathematical algorithms. What APL is best known for is its use of non-ASCII symbols, including some Greek letters. It is a dynamically typed interactive, array oriented language with a dynamic scope. In APL, all expressions are evaluated from right to left.

Free APL Interpreters and Compilers
http://www.thefreecountry.com/compilers/apl.shtml

A Programming Language

APL
http://www.thocp.net/software/languages/apl.htm
APL stands for “A Programming Language.” It was created in the 1960’s by Ken Iverson and his colleagues at IBM. The language was very much mathematically inspired and used a powerful notation for mathematical algorithms.

What Does Functional Programming Mean?
http://lambda-the-ultimate.org/node/4357

Sample applications for programming languages
http://lambda-the-ultimate.org/node/4356

Static single assignment form
http://en.wikipedia.org/wiki/Static_single_assignment_form

The Trouble with Erlang (or Erlang is a ghetto)
http://www.unlimitednovelty.com/2011/07/trouble-with-erlang-or-erlang-is-ghetto.html

Learn You a Haskell for Great Good!

Functors, Applicative Functors and Monoids

Continuations and Other Functional Patterns
http://vimeo.com/20293743

Unrestricted effects and nondeterminism in purely functional code
http://pchiusano.blogspot.com.ar/2011/07/unrestricted-effects-and-nondeterminism.html

Do (side) effects really need a total order?
http://pchiusano.blogspot.com.ar/2011/07/do-side-effects-really-need-total-order.html

JOHN BACKUS ON THE VON NEUMANN STYLE
http://davidbolton.net/blog/2011/12/04/backus-and-the-von-neumann-style/

Functional Programming For Java Programmer Scala Or Clojure?
http://www.nairaland.com/718309/functional-programming-java-programmer-scala

F#, MSTest, and FsUnit 1.1.0.0
http://blog.danielmohl.com/

An introduction to F#

A Coder Interview With Dan Mohl
http://www.codeproject.com/Articles/277701/A-Coder-Interview-With-Dan-Mohl

Appendo the Great
http://objectcommando.com/blog/2011/10/13/appendo-the-great/

Rust Programming Language
http://en.wikipedia.org/wiki/Rust_%28programming_language%29
Rust is an experimental, concurrent, multi-paradigm, compiled programming language developed by Mozilla Labs.[1] It is designed to be practical, supporting pure-functional, concurrent-actor, imperative-procedural, and object-oriented styles.

Functional Programming Doesn’t Work (and what to do about it)

Clojure Getting Started
http://dev.clojure.org/display/doc/Getting+Started

Simon Thompson and Huiquing Li on Refactoring in Functional Languages Like Haskell or Erlang
http://www.infoq.com/interviews/thompson-li-refactoring
Simon Thompson and Huiqing Li explain refactoring with functional languages and Wrangler (Erlang) and HaRe (Haskell). Also: how Wrangler’s ad-hoc mode allows everyone to write custom refactorings.

More resources about programming languages are coming.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com