SICP Section 1.3

Mar 30, 2017 20:13 · 140 words · 1 minute read sicp programming

Any powerful powerful programming language should have the ability to form abstractions using procedures by assigning names to common patterns. Higher order procedures are procedures that manipulate other procedures.

Forming higher order procedures makes code more readable and easier to manage. In the book, a higher order procedure that behaves in a similar fashion to Σ was constructed. The concept of a procedure that takes both procedures and variables as arguments is amazing(the first I saw this I thought it was wizardry).

Also, the use of the lambda function to define functions was explored. The difference between the lambda function and the define function is that in the lambda function, no name is specified for the procedure. Let is syntactic sugar which makes making internal definitions easier to do.

How is lambda and let used? Read more about them here