CSC/ECE 517 Fall 2011/ch1 1d sr

From Expertiza_Wiki
Jump to navigation Jump to search

Wiki Chapter: CSC/ECE 517 Fall 2011/ch1 1d sr

Introduction

Closures

What are Closures

Why Closures (Motivation, Uses, Advantages)

Closures in Dynamically Typed Languages

Example use of Closures in Dynamically Typed Langauges

Example in Ruby
Example in JS
Example in Python

Closures in Statically Typed Languages

The Problem

Limitations of Statically Typed Languages

Lexical Scope

Functions not as first class citizens of the language

Implementing Closures in Statically Typed Languages

C : function pointers

C++ : function objects

Java : anonymous inner classes

Closures and Static Scoping

(Explanation)

Case study of Scheme

References

1. Matz discussion on Closures

2. Closures in C++

3. Closures in C

4. Closures in Java

External Links