28.04.2014 Views

Names, Scopes, and Bindings Names, Scopes, and ... - Lrde - Epita

Names, Scopes, and Bindings Names, Scopes, and ... - Lrde - Epita

Names, Scopes, and Bindings Names, Scopes, and ... - Lrde - Epita

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Bindings</strong><br />

Symbol Tables<br />

Complications<br />

<strong>Names</strong><br />

<strong>Scopes</strong><br />

Binding Time<br />

<strong>Bindings</strong><br />

Symbol Tables<br />

Complications<br />

<strong>Names</strong><br />

<strong>Scopes</strong><br />

Binding Time<br />

<strong>Names</strong>, Identifiers, Symbols<br />

Identifiers<br />

Name (Identifiers, Symbols)<br />

reference<br />

address<br />

value<br />

To refer to some entities: variable, type, function, namespace,<br />

constant, control structure etc.<br />

usually alphanumeric <strong>and</strong> underscore, letter first, without<br />

white spaces.<br />

Algol 60, FORTRAN ignore white spaces.<br />

limitation on the length<br />

6 characters for the original FORTRAN (Fortran 90: 31),<br />

ISO C: 31<br />

no limit for most others.<br />

case insensitive in Modula-2 <strong>and</strong> Ada.<br />

A. Demaille, R. Levillain <strong>Names</strong>, <strong>Scopes</strong>, <strong>and</strong> <strong>Bindings</strong> 5 / 55<br />

A. Demaille, R. Levillain <strong>Names</strong>, <strong>Scopes</strong>, <strong>and</strong> <strong>Bindings</strong> 6 / 55<br />

<strong>Bindings</strong><br />

Symbol Tables<br />

Complications<br />

<strong>Names</strong><br />

<strong>Scopes</strong><br />

Binding Time<br />

<strong>Bindings</strong><br />

Symbol Tables<br />

Complications<br />

<strong>Names</strong><br />

<strong>Scopes</strong><br />

Binding Time<br />

<strong>Names</strong>, Objects, <strong>and</strong> <strong>Bindings</strong> [3]<br />

<strong>Names</strong>, Objects, <strong>and</strong> <strong>Bindings</strong><br />

Object 2<br />

Object 1 binding<br />

binding<br />

Name 1<br />

Name 2<br />

Name 3<br />

When are objects created <strong>and</strong> destroyed?<br />

Lifetimes (deferred to a later lecture).<br />

When are names created <strong>and</strong> destroyed?<br />

<strong>Scopes</strong>.<br />

Object 3<br />

binding<br />

binding<br />

Name 4<br />

When are bindings created <strong>and</strong> destroyed?<br />

Binding times.<br />

Object 4<br />

A. Demaille, R. Levillain <strong>Names</strong>, <strong>Scopes</strong>, <strong>and</strong> <strong>Bindings</strong> 7 / 55<br />

A. Demaille, R. Levillain <strong>Names</strong>, <strong>Scopes</strong>, <strong>and</strong> <strong>Bindings</strong> 8 / 55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!