20
What do you need to know about a new language? How to execute Program structure Variables name, keywords, binding, scope, lifetime Data types type system primitives, strings, arrays, hashes pointers/references type conversions and equality Expressions Operators, overloading, booleans, short-circuiting, conditional expression Referential transparency Statements vs Expressions Control flow conditionals loops Functions Classes Exception handling Other features Threads Reflection Libraries Functional Language – other aspects, covered later QUICK EX: With a partner how do you learn a new programming language? What types of programs do you write?

How to execute Program structure Variables name, keywords, binding, scope, lifetime Data types – type system – primitives, strings, arrays, hashes – pointers/references

Embed Size (px)

DESCRIPTION

 A binding is an association, such as: bind type of variable bind operation to symbol (e.g., meaning of *) bind function to its definition  Binding time is the time at which a binding takes place.  Type binding may be static or dynamic explicit or implicit

Citation preview

How to execute Program structure Variables name, keywords, binding, scope, lifetime Data types type system primitives, strings, arrays, hashes pointers/references type conversions and equality Expressions Operators, overloading, booleans, short-circuiting, conditional expression Referential transparency Statements vs Expressions Control flow conditionals loops Functions Classes Exception handling Other features Threads Reflection Libraries Functional Language other aspects, covered later QUICK EX: With a partner how do you learn a new programming language? What types of programs do you write? A binding is an association, such as: bind type of variable bind operation to symbol (e.g., meaning of *) bind function to its definition Binding time is the time at which a binding takes place. Type binding may be static or dynamic explicit or implicit Language design time -- bind operator symbols to operations : sum = sum + count Language implementation time-- bind type to a representation : int => number of bits, etc. Compile time -- bind a variable to a type: int count; Link time bind library subprogram to code: cout