Computer Science: Regex, Context Free Grammar, Scoping, Symbol Table, Memory Management - , Study notes of Programming Languages

Various computer science concepts including regular expressions (re) and context free grammar (cfg) syntax, their differences, constructing parse trees, ambiguous grammars, static and dynamic scoping, symbol tables, tail recursion, non-determinacy, and type checking. It also discusses packed and normal memory layouts for structures and memory locations in arrays.

Typology: Study notes

Pre 2010

Uploaded on 03/10/2009

koofers-user-cb0
koofers-user-cb0 🇺🇸

5

(1)

9 documents

1 / 1

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1. Regular Expression (RE) syntax
2. Context Free Grammar (CFG) syntax
3. Difference between RE and CFGs (i.e., what “syntaxes” can be written as a CFG
and not as a RE)
4. Construct Parse tree
5. Ambiguous Grammar
a. Is something ambiguous under any “parsing”
b. Is something LL(1), i.e., Left Recursion and Common Prefix
6. Static Scoping
a. For a given program, determine the value if using static scoping
b. For a given program, write the static linking
7. Dynamic Scoping
a. For a given program, determine the value if using dynamic scoping
b. For a given program, write the dynamic programming
8. Symbol Table
a. For a given program, write out the symbol table
9. Tail Recursion
10. Non-determinacy
11. Type checking: Strong, strict, and loose
12. Memory layout for structures
a. Packed and “normal”
13. Memory location in arrays.

Partial preview of the text

Download Computer Science: Regex, Context Free Grammar, Scoping, Symbol Table, Memory Management - and more Study notes Programming Languages in PDF only on Docsity!

  1. Regular Expression (RE) syntax
  2. Context Free Grammar (CFG) syntax
  3. Difference between RE and CFGs ( i.e. , what “syntaxes” can be written as a CFG and not as a RE)
  4. Construct Parse tree
  5. Ambiguous Grammar a. Is something ambiguous under any “parsing” b. Is something LL(1), i.e. , Left Recursion and Common Prefix
  6. Static Scoping a. For a given program, determine the value if using static scoping b. For a given program, write the static linking
  7. Dynamic Scoping a. For a given program, determine the value if using dynamic scoping b. For a given program, write the dynamic programming
  8. Symbol Table a. For a given program, write out the symbol table
  9. Tail Recursion
  10. Non-determinacy
  11. Type checking: Strong, strict, and loose
  12. Memory layout for structures a. Packed and “normal”
  13. Memory location in arrays.