SlideShare uma empresa Scribd logo
1 de 108
Baixar para ler offline
Challenge the future
Delft
University of
Technology
Course IN4303
Compiler Construction
Eduardo Souza, Guido Wachsmuth, Eelco Visser
Lexical Analysis
today’s lecture
Lexical Analysis
Overview
2
today’s lecture
Lexical Analysis
Overview
Lexical analysis
2
today’s lecture
Lexical Analysis
Overview
Lexical analysis
Regular languages
• regular grammars
• regular expressions
• finite state automata
2
today’s lecture
Lexical Analysis
Overview
Lexical analysis
Regular languages
• regular grammars
• regular expressions
• finite state automata
Equivalence of formalisms
• constructive approach
2
today’s lecture
Lexical Analysis
Overview
Lexical analysis
Regular languages
• regular grammars
• regular expressions
• finite state automata
Equivalence of formalisms
• constructive approach
Tool generation
2
Lexical Analysis
Regular Grammars
I
3
formal languages
Lexical Analysis 4
Recap: A Theory of Language
formal languages
Lexical Analysis
vocabulary Σ
finite, nonempty set of elements (words, letters)
alphabet
4
Recap: A Theory of Language
formal languages
Lexical Analysis
vocabulary Σ
finite, nonempty set of elements (words, letters)
alphabet
string over Σ
finite sequence of elements chosen from Σ
word, sentence, utterance
4
Recap: A Theory of Language
formal languages
Lexical Analysis
vocabulary Σ
finite, nonempty set of elements (words, letters)
alphabet
string over Σ
finite sequence of elements chosen from Σ
word, sentence, utterance
formal language λ
set of strings over a vocabulary Σ
λ ⊆ Σ*
4
Recap: A Theory of Language
formal grammars
Lexical Analysis 5
Recap: A Theory of Language
formal grammars
Lexical Analysis
formal grammar G = (N, Σ, P, S)
nonterminal symbols N
terminal symbols Σ
production rules P ⊆ (N∪Σ)*
N (N∪Σ)*
× (N∪Σ)*
start symbol S∈N
5
Recap: A Theory of Language
formal grammars
Lexical Analysis
formal grammar G = (N, Σ, P, S)
nonterminal symbols N
terminal symbols Σ
production rules P ⊆ (N∪Σ)*
N (N∪Σ)*
× (N∪Σ)*
start symbol S∈N
5
Recap: A Theory of Language
nonterminal symbol
formal grammars
Lexical Analysis
formal grammar G = (N, Σ, P, S)
nonterminal symbols N
terminal symbols Σ
production rules P ⊆ (N∪Σ)*
N (N∪Σ)*
× (N∪Σ)*
start symbol S∈N
5
Recap: A Theory of Language
context
formal grammars
Lexical Analysis
formal grammar G = (N, Σ, P, S)
nonterminal symbols N
terminal symbols Σ
production rules P ⊆ (N∪Σ)*
N (N∪Σ)*
× (N∪Σ)*
start symbol S∈N
5
Recap: A Theory of Language
replacement
formal grammars
Lexical Analysis
formal grammar G = (N, Σ, P, S)
nonterminal symbols N
terminal symbols Σ
production rules P ⊆ (N∪Σ)*
N (N∪Σ)*
× (N∪Σ)*
start symbol S∈N
grammar classes
type-0, unrestricted
type-1, context-sensitive: (a A c, a b c)
type-2, context-free: P ⊆ N × (N∪Σ)*
type-3, regular: (A, x) or (A, xB)
5
Recap: A Theory of Language
right regular grammar
Lexical Analysis 6
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
Decimal Numbers
right regular grammar
Lexical Analysis 7
Id → “a” R
…
Id → “z” R
R → “a” R
…
R → “z” R
R → “0” R
…
R → “9” R
Id → “a”
…
Id → “z”
R → “a”
…
R → “z”
R → “0”
…
R → “9”
Identifiers
formal languages
Lexical Analysis 8
Recap: A Theory of Language
formal languages
Lexical Analysis
formal grammar G = (N, Σ, P, S)
8
Recap: A Theory of Language
formal languages
Lexical Analysis
formal grammar G = (N, Σ, P, S)
derivation relation G ⊆ (N∪Σ)*
× (N∪Σ)*
w G w’
∃(p, q)∈P: ∃u,v∈(N∪Σ)*
:
w=u p v ∧ w’=u q v
8
Recap: A Theory of Language
formal languages
Lexical Analysis
formal grammar G = (N, Σ, P, S)
derivation relation G ⊆ (N∪Σ)*
× (N∪Σ)*
w G w’
∃(p, q)∈P: ∃u,v∈(N∪Σ)*
:
w=u p v ∧ w’=u q v
formal language L(G) ⊆ Σ*
L(G) = {w∈Σ*
| S G
*
w}
8
Recap: A Theory of Language
formal languages
Lexical Analysis
formal grammar G = (N, Σ, P, S)
derivation relation G ⊆ (N∪Σ)*
× (N∪Σ)*
w G w’
∃(p, q)∈P: ∃u,v∈(N∪Σ)*
:
w=u p v ∧ w’=u q v
formal language L(G) ⊆ Σ*
L(G) = {w∈Σ*
| S G
*
w}
classes of formal languages
8
Recap: A Theory of Language
Lexical Analysis 9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
A → aB
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
A → aB
B → aC
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
A → aB
B → aC
C → aD
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
A → aB
B → aC
C → aD
D → aS
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
G:
S → a
S → aA
A → aB
B → aC
C → aD
D → aS
9
Example
Is G regular?

L(G) = ?
Lexical Analysis
Regular Expressions
II
10
overview
Lexical Analysis
Recap: Regular Expressions
basics
• symbol from an alphabet
• ε
combinators
• alternation: E1 | E2
• concatenation: E1 E2
• repetition: E*
• optional: E? = E | ε
• one or more: E+ = E E*
11
regular expressions
Lexical Analysis 12
Num: (0|1|2|3|4|5|6|7|8|9)+
Id: (a|…|z)(a|…|z|0|…|9)*
Decimal Numbers & Identifiers
formal languages
Lexical Analysis
Regular Expressions
basics
• L(a) = {“a”}
• L(ε) = {“”}
combinators
• L(E1 | E2) = L(E1) ∪ L(E2)
• L(E1 E2) = L(E1) · L(E2)
• L(E*) = L(E)*
13
regular expressions
Lexical Analysis 14
Num: (0|1|2|3|4|5|6|7|8|9)+
A valid Num is any word that consists of a sequence of
one or more digits.
Id: (a|…|z)(a|…|z|0|…|9)*
A valid Id is any word that starts with a lowercase letter
followed by sequence of zero or more lowercase letters or
digits.
Decimal Numbers & Identifiers
Lexical Analysis 15
Example
Lexical Analysis 15
Example
Gr:
Lexical Analysis 15
Example
Gr:
Lexical Analysis 15
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
Lexical Analysis 15
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
Lexical Analysis 15
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
L(Gr) = ?
Lexical Analysis 16
Example
Lexical Analysis 16
Example
Gr:
Lexical Analysis 16
Example
Gr:
Lexical Analysis 16
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
Lexical Analysis 16
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
Lexical Analysis 16
Example
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
L(Gr) = The set of words that start with
zero or more capital letters, followed by
zero or more decimal digits.
Lexical Analysis
Finite Automata
III
17
formal definition
Lexical Analysis 18
Finite Automata
formal definition
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
states Q
input symbols Σ
transition function T
start state q0∈Q
final states F⊆Q
18
Finite Automata
formal definition
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
states Q
input symbols Σ
transition function T
start state q0∈Q
final states F⊆Q
transition function
nondeterministic FA T : Q × Σ → P(Q)
NFA with ε-moves T : Q × (Σ ∪ {ε}) → P(Q)
deterministic FA T : Q × Σ → Q
18
Finite Automata
finite automata
Lexical Analysis
Decimal Numbers & Identifiers
19
1 2
0-9
0-9
1 2
a-z a-z
0-9
formal languages
Lexical Analysis 20
Nondeterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
20
Nondeterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
transition function T : Q × Σ → P(Q)
T({q1,..., qn}, x) := T(q1, x) ∪ … ∪ T(qn, x)
T*({q1,..., qn}, ε) := {q1,..., qn}
T*({q1,..., qn}, xw) := T*(T({q1,..., qn}, x), w)
20
Nondeterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
transition function T : Q × Σ → P(Q)
T({q1,..., qn}, x) := T(q1, x) ∪ … ∪ T(qn, x)
T*({q1,..., qn}, ε) := {q1,..., qn}
T*({q1,..., qn}, xw) := T*(T({q1,..., qn}, x), w)
formal language L(M) ⊆ Σ*
L(M) = {w∈Σ*
| T*
({q0}, w) ∩ F ≠ ∅}
20
Nondeterministic Finite Automata
formal languages
Lexical Analysis 21
Nondeterministic Finite Automata
3 4
f
1 2
a-z a-z
0-9
i
formal languages
Lexical Analysis 22
Deterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
22
Deterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
transition function T : Q × Σ → Q
T*(q, ε) := q
T*(q, xw) := T*(T(q, x), w)
22
Deterministic Finite Automata
formal languages
Lexical Analysis
finite automaton M = (Q, Σ, T, q0, F)
transition function T : Q × Σ → Q
T*(q, ε) := q
T*(q, xw) := T*(T(q, x), w)
formal language L(M) ⊆ Σ*
L(M) = {w∈Σ*
| T*
(q0, w) ∈ F}
22
Deterministic Finite Automata
formal languages
Lexical Analysis 23
Deterministic Finite Automata
1 2
0-9
0-9
1 2
a-z a-z
0-9
Lexical Analysis
Equivalence
IV
24
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
25
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
26
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
formalisms
Lexical Analysis
Regular Languages
27
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
right regular grammar
Lexical Analysis 28
NFA construction
right regular grammar
Lexical Analysis
formal grammar G = (N, Σ, P, S)
28
NFA construction
right regular grammar
Lexical Analysis
formal grammar G = (N, Σ, P, S)
finite automaton M = (N ∪ {f}, Σ, T, S, F)
28
NFA construction
right regular grammar
Lexical Analysis
formal grammar G = (N, Σ, P, S)
finite automaton M = (N ∪ {f}, Σ, T, S, F)
transition function T
(X, aY)∈P : (X, a, Y)∈T
(X, a)∈P : (X, a, f)∈T
28
NFA construction
right regular grammar
Lexical Analysis
formal grammar G = (N, Σ, P, S)
finite automaton M = (N ∪ {f}, Σ, T, S, F)
transition function T
(X, aY)∈P : (X, a, Y)∈T
(X, a)∈P : (X, a, f)∈T
final states F
(S, ε)∈P : F = {S, f}
else: F = {f}
28
NFA construction
Example
Lexical Analysis 29
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
NFA construction
Example
Lexical Analysis 29
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
NFA construction
N
f
Example
Lexical Analysis 29
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
NFA construction
N
f
Example
Lexical Analysis 29
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
NFA construction
N
f
0-9
Example
Lexical Analysis 29
Num → “0” Num
Num → “1” Num
Num → “2” Num
Num → “3” Num
Num → “4” Num
Num → “5” Num
Num → “6” Num
Num → “7” Num
Num → “8” Num
Num → “9” Num
Num → “0”
Num → “1”
Num → “2”
Num → “3”
Num → “4”
Num → “5”
Num → “6”
Num → “7”
Num → “8”
Num → “9”
NFA construction
N
f
0-9
0-9
Example
Lexical Analysis
formal grammar G = (N, Σ, P, S)
finite automaton M = (N ∪ {f}, Σ, T, S, F)
transition function T
(X, aY)∈P : (X, a, Y)∈T
(X, a)∈P : (X, a, f)∈T
final states F
(S, ε)∈P : F = {S, f}
else: F = {f}
30
NFA construction
G:
S → a
S → aA
A → aB
B → aC
C → aD
D → aS
formalisms
Lexical Analysis
Regular Languages
31
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
regular expressions
Lexical Analysis
NFA construction
32
a
a
(x) εε
x
x*
ε
x
ε
regular expressions
Lexical Analysis
NFA construction
33
x|y
x
xy
y
ε
ε
ε
ε
εε
x y
ε
regular expressions
Lexical Analysis
NFA construction
34
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
formalisms
Lexical Analysis
Regular Languages
35
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
ε elimination
Lexical Analysis
additional final states
• states with ε-moves into final states
• become final states themselves
additional transitions
• ε-move from source to target state
• transitions from target state
• add these transitions to the source state
36
NFA construction
ε elimination
Lexical Analysis
NFA construction
additional final states
• states with ε-moves into final states
• become final states themselves
additional transitions
• ε-move from source to target state
• transitions from target state
• add these transitions to the source state
37
Gr:
S → ('A'= | … | 'Z')*(0 | … | 9)*
formalisms
Lexical Analysis
Regular Languages
38
right regular
grammars
left regular
grammars
regular
expressions
NFAs DFAs
NFAs with
ε-moves
eliminating nondeterminism
Lexical Analysis
nondeterministic finite automaton M = (Q, Σ, T, q0, F)
deterministic finite automaton M’ = (P(Q), Σ, T’, {q0}, F’)
transition function T’
• T’({q1,..., qn}, x) = T({q1,..., qn}, x) = T(q1, x) ∪ … ∪ T(qn, x)
final states F’ = {S⎮S⊆Q, S∩F ≠ ∅}
• all states that include a final state of the original NFA
39
Powerset construction
example
Lexical Analysis
Powerset construction
40
3 4
f
1 2
a-z a-z
0-9
i
example
Lexical Analysis
Powerset construction
41
3 4
f
1 2
a-z a-z
0-9
i
1 2
a-h
j-z
a-z
0-9
24
f
i
23
a-e,g-z
0-9
a-z
0-9
Lexical Analysis
Summary
V
42
lessons learned
Lexical Analysis
Summary
43
lessons learned
Lexical Analysis
Summary
What are the formalisms to describe regular languages?
• regular grammars
• regular expressions
• finite state automata
43
lessons learned
Lexical Analysis
Summary
What are the formalisms to describe regular languages?
• regular grammars
• regular expressions
• finite state automata
Why are these formalisms equivalent?
• constructive proofs
43
lessons learned
Lexical Analysis
Summary
What are the formalisms to describe regular languages?
• regular grammars
• regular expressions
• finite state automata
Why are these formalisms equivalent?
• constructive proofs
How can we generate compiler tools from that?
• implement DFAs
43
learn more
Lexical Analysis
Literature
44
learn more
Lexical Analysis
Literature
Formal languages
Noam Chomsky: Three models for the description of language. 1956
J. E. Hopcroft, R. Motwani, J. D. Ullman: Introduction to Automata
Theory, Languages, and Computation. 2006
44
learn more
Lexical Analysis
Literature
Formal languages
Noam Chomsky: Three models for the description of language. 1956
J. E. Hopcroft, R. Motwani, J. D. Ullman: Introduction to Automata
Theory, Languages, and Computation. 2006
Lexical analysis
Andrew W. Appel, Jens Palsberg: Modern Compiler Implementation in
Java, 2nd edition. 2002
44
Lexical Analysis
Copyrights
45
Lexical Analysis 46
copyrights
Lexical Analysis
Pictures
Slide 1:
Book Scanner by Ben Woosley, some rights reserved
Slides 4, 5, 8:
Noam Chomsky by Fellowsisters, some rights reserved
Slide 6, 7, 11, 15:
Tiger by Bernard Landgraf, some rights reserved
Slide 18:
Coffee Primo by Dominica Williamson, some rights reserved
Slide 32:
Pine Creek by Nicholas, some rights reserved
47

Mais conteúdo relacionado

Mais procurados

Declare Your Language (at DLS)
Declare Your Language (at DLS)Declare Your Language (at DLS)
Declare Your Language (at DLS)
Eelco Visser
 
09 logic programming
09 logic programming09 logic programming
09 logic programming
saru40
 

Mais procurados (20)

LL Parsing
LL ParsingLL Parsing
LL Parsing
 
Dynamic Semantics
Dynamic SemanticsDynamic Semantics
Dynamic Semantics
 
Declarative Semantics Definition - Term Rewriting
Declarative Semantics Definition - Term RewritingDeclarative Semantics Definition - Term Rewriting
Declarative Semantics Definition - Term Rewriting
 
Static name resolution
Static name resolutionStatic name resolution
Static name resolution
 
Syntax Definition
Syntax DefinitionSyntax Definition
Syntax Definition
 
Pure and Declarative Syntax Definition: Paradise Lost and Regained
Pure and Declarative Syntax Definition: Paradise Lost and RegainedPure and Declarative Syntax Definition: Paradise Lost and Regained
Pure and Declarative Syntax Definition: Paradise Lost and Regained
 
Declare Your Language: Syntactic (Editor) Services
Declare Your Language: Syntactic (Editor) ServicesDeclare Your Language: Syntactic (Editor) Services
Declare Your Language: Syntactic (Editor) Services
 
Introduction - Imperative and Object-Oriented Languages
Introduction - Imperative and Object-Oriented LanguagesIntroduction - Imperative and Object-Oriented Languages
Introduction - Imperative and Object-Oriented Languages
 
Declare Your Language: Type Checking
Declare Your Language: Type CheckingDeclare Your Language: Type Checking
Declare Your Language: Type Checking
 
Type analysis
Type analysisType analysis
Type analysis
 
Dynamic Semantics Specification and Interpreter Generation
Dynamic Semantics Specification and Interpreter GenerationDynamic Semantics Specification and Interpreter Generation
Dynamic Semantics Specification and Interpreter Generation
 
Ch04
Ch04Ch04
Ch04
 
5 top-down-parsers
5  top-down-parsers 5  top-down-parsers
5 top-down-parsers
 
Declare Your Language (at DLS)
Declare Your Language (at DLS)Declare Your Language (at DLS)
Declare Your Language (at DLS)
 
Parsing in Compiler Design
Parsing in Compiler DesignParsing in Compiler Design
Parsing in Compiler Design
 
Regular expression examples
Regular expression examplesRegular expression examples
Regular expression examples
 
Ch03
Ch03Ch03
Ch03
 
"That scripting language called Prolog"
"That scripting language called Prolog""That scripting language called Prolog"
"That scripting language called Prolog"
 
09 logic programming
09 logic programming09 logic programming
09 logic programming
 
4. languages and grammars
4. languages and grammars4. languages and grammars
4. languages and grammars
 

Destaque (6)

Register Allocation
Register AllocationRegister Allocation
Register Allocation
 
Language
LanguageLanguage
Language
 
Garbage Collection
Garbage CollectionGarbage Collection
Garbage Collection
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
LR Parsing
LR ParsingLR Parsing
LR Parsing
 
Software languages
Software languagesSoftware languages
Software languages
 

Semelhante a Lexical Analysis

Tensor-based Models of Natural Language Semantics
Tensor-based Models of Natural Language SemanticsTensor-based Models of Natural Language Semantics
Tensor-based Models of Natural Language Semantics
Dimitrios Kartsaklis
 
140106 isaim-okayama
140106 isaim-okayama140106 isaim-okayama
140106 isaim-okayama
gumitaro2012
 

Semelhante a Lexical Analysis (20)

Compiler components and their generators traditional parsing algorithms
Compiler components and their generators  traditional parsing algorithmsCompiler components and their generators  traditional parsing algorithms
Compiler components and their generators traditional parsing algorithms
 
Scope Graphs: A fresh look at name binding in programming languages
Scope Graphs: A fresh look at name binding in programming languagesScope Graphs: A fresh look at name binding in programming languages
Scope Graphs: A fresh look at name binding in programming languages
 
Open course(programming languages) 20150211
Open course(programming languages) 20150211Open course(programming languages) 20150211
Open course(programming languages) 20150211
 
Open course(programming languages) 20150211
Open course(programming languages) 20150211Open course(programming languages) 20150211
Open course(programming languages) 20150211
 
Ch02
Ch02Ch02
Ch02
 
Declarative Language Definition
Declarative Language DefinitionDeclarative Language Definition
Declarative Language Definition
 
ToC_M1L3_Grammar and Derivation.pdf
ToC_M1L3_Grammar and Derivation.pdfToC_M1L3_Grammar and Derivation.pdf
ToC_M1L3_Grammar and Derivation.pdf
 
Tensor-based Models of Natural Language Semantics
Tensor-based Models of Natural Language SemanticsTensor-based Models of Natural Language Semantics
Tensor-based Models of Natural Language Semantics
 
140106 isaim-okayama
140106 isaim-okayama140106 isaim-okayama
140106 isaim-okayama
 
Алексей Чеусов - Расчёсываем своё ЧСВ
Алексей Чеусов - Расчёсываем своё ЧСВАлексей Чеусов - Расчёсываем своё ЧСВ
Алексей Чеусов - Расчёсываем своё ЧСВ
 
Applied Math 40S June 2 AM, 2008
Applied Math 40S June 2 AM, 2008Applied Math 40S June 2 AM, 2008
Applied Math 40S June 2 AM, 2008
 
Compiler Construction | Lecture 9 | Constraint Resolution
Compiler Construction | Lecture 9 | Constraint ResolutionCompiler Construction | Lecture 9 | Constraint Resolution
Compiler Construction | Lecture 9 | Constraint Resolution
 
Formal Specification of Cypher
Formal Specification of CypherFormal Specification of Cypher
Formal Specification of Cypher
 
L03 ai - knowledge representation using logic
L03 ai - knowledge representation using logicL03 ai - knowledge representation using logic
L03 ai - knowledge representation using logic
 
04 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x204 greedyalgorithmsii 2x2
04 greedyalgorithmsii 2x2
 
Formal methods 3 - languages and machines
Formal methods   3 - languages and machinesFormal methods   3 - languages and machines
Formal methods 3 - languages and machines
 
The Chase in Database Theory
The Chase in Database TheoryThe Chase in Database Theory
The Chase in Database Theory
 
The Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random ProjectionThe Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random Projection
 
Fol
FolFol
Fol
 
Top school in noida
Top school in noidaTop school in noida
Top school in noida
 

Mais de Eelco Visser

Declarative Type System Specification with Statix
Declarative Type System Specification with StatixDeclarative Type System Specification with Statix
Declarative Type System Specification with Statix
Eelco Visser
 

Mais de Eelco Visser (20)

CS4200 2019 | Lecture 5 | Transformation by Term Rewriting
CS4200 2019 | Lecture 5 | Transformation by Term RewritingCS4200 2019 | Lecture 5 | Transformation by Term Rewriting
CS4200 2019 | Lecture 5 | Transformation by Term Rewriting
 
CS4200 2019 | Lecture 4 | Syntactic Services
CS4200 2019 | Lecture 4 | Syntactic ServicesCS4200 2019 | Lecture 4 | Syntactic Services
CS4200 2019 | Lecture 4 | Syntactic Services
 
CS4200 2019 | Lecture 3 | Parsing
CS4200 2019 | Lecture 3 | ParsingCS4200 2019 | Lecture 3 | Parsing
CS4200 2019 | Lecture 3 | Parsing
 
CS4200 2019 | Lecture 2 | syntax-definition
CS4200 2019 | Lecture 2 | syntax-definitionCS4200 2019 | Lecture 2 | syntax-definition
CS4200 2019 | Lecture 2 | syntax-definition
 
CS4200 2019 Lecture 1: Introduction
CS4200 2019 Lecture 1: IntroductionCS4200 2019 Lecture 1: Introduction
CS4200 2019 Lecture 1: Introduction
 
A Direct Semantics of Declarative Disambiguation Rules
A Direct Semantics of Declarative Disambiguation RulesA Direct Semantics of Declarative Disambiguation Rules
A Direct Semantics of Declarative Disambiguation Rules
 
Declarative Type System Specification with Statix
Declarative Type System Specification with StatixDeclarative Type System Specification with Statix
Declarative Type System Specification with Statix
 
Compiler Construction | Lecture 17 | Beyond Compiler Construction
Compiler Construction | Lecture 17 | Beyond Compiler ConstructionCompiler Construction | Lecture 17 | Beyond Compiler Construction
Compiler Construction | Lecture 17 | Beyond Compiler Construction
 
Domain Specific Languages for Parallel Graph AnalytiX (PGX)
Domain Specific Languages for Parallel Graph AnalytiX (PGX)Domain Specific Languages for Parallel Graph AnalytiX (PGX)
Domain Specific Languages for Parallel Graph AnalytiX (PGX)
 
Compiler Construction | Lecture 15 | Memory Management
Compiler Construction | Lecture 15 | Memory ManagementCompiler Construction | Lecture 15 | Memory Management
Compiler Construction | Lecture 15 | Memory Management
 
Compiler Construction | Lecture 14 | Interpreters
Compiler Construction | Lecture 14 | InterpretersCompiler Construction | Lecture 14 | Interpreters
Compiler Construction | Lecture 14 | Interpreters
 
Compiler Construction | Lecture 13 | Code Generation
Compiler Construction | Lecture 13 | Code GenerationCompiler Construction | Lecture 13 | Code Generation
Compiler Construction | Lecture 13 | Code Generation
 
Compiler Construction | Lecture 12 | Virtual Machines
Compiler Construction | Lecture 12 | Virtual MachinesCompiler Construction | Lecture 12 | Virtual Machines
Compiler Construction | Lecture 12 | Virtual Machines
 
Compiler Construction | Lecture 11 | Monotone Frameworks
Compiler Construction | Lecture 11 | Monotone FrameworksCompiler Construction | Lecture 11 | Monotone Frameworks
Compiler Construction | Lecture 11 | Monotone Frameworks
 
Compiler Construction | Lecture 10 | Data-Flow Analysis
Compiler Construction | Lecture 10 | Data-Flow AnalysisCompiler Construction | Lecture 10 | Data-Flow Analysis
Compiler Construction | Lecture 10 | Data-Flow Analysis
 
Compiler Construction | Lecture 8 | Type Constraints
Compiler Construction | Lecture 8 | Type ConstraintsCompiler Construction | Lecture 8 | Type Constraints
Compiler Construction | Lecture 8 | Type Constraints
 
Compiler Construction | Lecture 7 | Type Checking
Compiler Construction | Lecture 7 | Type CheckingCompiler Construction | Lecture 7 | Type Checking
Compiler Construction | Lecture 7 | Type Checking
 
Compiler Construction | Lecture 6 | Introduction to Static Analysis
Compiler Construction | Lecture 6 | Introduction to Static AnalysisCompiler Construction | Lecture 6 | Introduction to Static Analysis
Compiler Construction | Lecture 6 | Introduction to Static Analysis
 
Compiler Construction | Lecture 5 | Transformation by Term Rewriting
Compiler Construction | Lecture 5 | Transformation by Term RewritingCompiler Construction | Lecture 5 | Transformation by Term Rewriting
Compiler Construction | Lecture 5 | Transformation by Term Rewriting
 
Compiler Construction | Lecture 4 | Parsing
Compiler Construction | Lecture 4 | Parsing Compiler Construction | Lecture 4 | Parsing
Compiler Construction | Lecture 4 | Parsing
 

Último

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 

Último (20)

%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

Lexical Analysis