![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Introduction to Functional Programming in Scheme - slide 44 : 49 |
We illustrate differences between static and dynamic binding of free names
![]() | A function g with four free names a, b, c, and d - statically bound in an outer let in Scheme. |
![]() | A function g with four bounded names a, b, c, and d - passing many parameters from f to g. |
Dynamic binding of free name provides for implicit passing of the formal parameters of f to g
In some situations, this is convenient: Temporary shadowing of more global name bindings
In other situations it may give surprises...