UT Dallas CS 4337 - #Sebesta ch05 name bind scope - handout (40 pages)

Previewing pages 1, 2, 3, 19, 20, 38, 39, 40 of 40 page document View the full content.
View Full Document

#Sebesta ch05 name bind scope - handout



Previewing pages 1, 2, 3, 19, 20, 38, 39, 40 of actual document.

View the full content.
View Full Document
View Full Document

#Sebesta ch05 name bind scope - handout

37 views


Pages:
40
School:
University of Texas at Dallas
Course:
Cs 4337 - Organization of Programming Languages

Unformatted text preview:

Chapter 5 Names Bindings and Scopes Introduction Imperative languages are abstractions of von Neumann architecture Memory Processor Variables are characterized by attributes To design a type you must consider scope lifetime type checking initialization and type compatibility Copyright 2012 Addison Wesley All rights reserved 1 2 Names Design issues for names Are names case sensitive Are special words reserved words or keywords Copyright 2012 Addison Wesley All rights reserved 1 3 Names continued Design issues for names Are names case sensitive Are special words reserved words or keywords Length If too short they cannot be connotative Language examples FORTRAN 95 maximum of 31 C99 no limit but only the first 63 are significant also external names are limited to a maximum of 31 C Ada and Java no limit and all are significant C no limit but implementers often impose one Copyright 2012 Addison Wesley All rights reserved 1 4 Names continued Special characters PHP all variable names must begin with dollar signs Perl all variable names begin with special characters which specify the variable s type Ruby variable names that begin with are instance variables those that begin with are class variables Copyright 2012 Addison Wesley All rights reserved 1 5 Names continued Case sensitivity Disadvantage readability names that look alike are different Names in the C based languages are case sensitive Names in others are not Worse in C Java and C because predefined names are mixed case e g IndexOutOfBoundsException Copyright 2012 Addison Wesley All rights reserved 1 6 Names continued Special words An aid to readability used to delimit or separate statement clauses A keyword is a word that is special only in certain contexts e g in Fortran Real VarName Real is a data type followed with a name therefore Real is a keyword Real 3 4 Real is a variable A reserved word is a special word that cannot be used as a user defined name Potential problem with reserved words If there are too many many collisions occur e g COBOL has 300 reserved words Copyright 2012 Addison Wesley All rights reserved 1 7 Variables A variable is an abstraction of a memory cell Variables can be characterized as a sixtuple of attributes Name Address Value Type Lifetime Scope Copyright 2012 Addison Wesley All rights reserved 1 8 Attribute of Variable Name not all variables have them Address the memory address with which it is associated A variable may have different addresses at different times during execution A variable may have different addresses at different places in a program If two variable names can be used to access the same memory location they are called aliases Aliases are created via pointers reference variables C and C unions Aliases are harmful to readability program readers must remember all of them Copyright 2012 Addison Wesley All rights reserved 1 9 Variables Attributes continued Type Determines the range of values of variables and the set of operations that are defined for values



View Full Document

Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view #Sebesta ch05 name bind scope - handout and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view #Sebesta ch05 name bind scope - handout and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?