For a beginner who wants to learn the theoretical basics, Pierce’s Danben proposal is second to none.
But from the list you give, it looks like what you want - how to program effectively using first class class values, which is what lambda evaluates to. You will not get this experience, information or intuition in a language agnostic package. Worse, in real languages, many anonymous functions are created by partially applying Curried functions, and not through explicit lambda ; most people use first-class features that pretty much find lambdas quite annoying and difficult to read.
With this as a background, here are two tips:
If you are dead after learning about lambda , do something with Schema. Schemas, such as first-class functions and circuit notation, make brighter lambdas for programmers than many other functional languages.
As a newbie, you might be better off learning why people want to use these first-class features to get started. In this case, read Why functional programming questions from John Hughes. The Hughes document uses a designation that is somewhat linguistic-agnostic; this is not a designation of any language currently popular, but it is somewhat similar to Caml, F #, Haskell and ML.
Norman ramsey
source share