click below
click below
Normal Size Small Size show me how
CPTR310
Theory of Programming Language
| Question | Answer |
|---|---|
| What language was originally developed by Ken Thompson at Bell labs in conjunction with the design of UNIX operating system? | C |
| Who was the backing power for Cobalt? | IBM |
| Who was the backing power for ADA? | United States Department of Defence |
| What is the interaction between assembly language and machine language? | one to one |
| what is generally considered the first high level programming language? | Fortran |
| What is a Just in Time Compiler? | A programming system that deliberately delays compilation until last possible moment |
| What era was the first program written? | 1940's |
| What program did Microsoft first support? | C# |
| In what circumstance does it make sense to program in an assembler language? | When you are programming a specialty program |
| What are the names of two widely used Concurrent languages today? | Java and C# |
| What was the first functional language? | Lisp |
| Is Java compiled or interpreted? | Both |
| What is P-Code? | A notation resembling a simplified programming language, used in program design. |
| What is bootstrapping? | When a compiler is used to compile itself |
| What languages can write new pieces of itself? | Lisp, Prolog and Python |
| What is typically used as a target program in a compiler? | Machine language |
| What is commonly know as microcode in a day to day computer? | Firmware |
| What is a Token when working with programming? | The smallest meaningful unit of a program |
| What does the code generation phase of a compiler perform? | Translates the intermediate for into target language |
| What is the purpose of a compiler's symbol table? | Maps an identifier to the information known about it. |
| What is syntax? | The set of rules that defines the combination of symbols that are considered to be a correctly structured document or fragment in that language. |
| What is Semantics? | The relation between signifires, like words, phrases, signs and symbols and what they stand for. |
| Tokens are constructed from independent characters using three kinds of format rules? | True |
| What is Backus-Naur form? | Context free grammar |
| When discussing context free grammar, what is a derivation? What is a sentimental form? | A series of replacement characters that show how to derive a string in terminals from the start symbol, each string of sybols |
| What is pragmas? | Constructs that provide directives or hints the the compiler |
| are significant comments are considered pragmas? | True |
| What is the process when up-coming characters are examined by a scanner in order to make a decission? | Look Ahead |
| What is the "longest possible token rule?" | Whenever a legitimate token is a prefix to another token, we should continue scanning |
| How does a scanner identify lexical errors? How does it respond? | When characters input is neither an acceptable continuation of the current token nor the start of another token. It prints and error message. |
| Why must a scanner save the text of tokens? | To make it easier to generate high quality error messages in subsequent phases. |
| What is the difference between keyword and identifier? | Identifiers can be redefined to have different meanings keywords cannot. |
| What is the significant meaning of LL? | Left to Rigt, left most deviation |
| Compilers are the same as assembler, just a newer version? | False |
| What is a syntax error? | When a character or string is incorrectly placed in a command or instruction that causes a failure in execution. |
| Formal languages can be grouped into classes known as the Chomsky Hierarchy. How many ways can the classes be characterized? | 2 |
| What is the following model performing? Read A Read B Sum := A+B Write Sum Write Sum/2 | Summation and division of two items |
| What does DFA stand for in referencing programming? | Deterministic finite automation |
| What kind of parser is produced by Yacc/Bison? | LALR |
| What is binding time? | The time at which a name is associated with a particular object and the time at which an answer is associated with any open question in language or program. |
| A top-down parser constructs a parse tree starting from the roots and proceeding in a left-to-right depth-first traversal? | True |
| What determines whether an object is allocated statically, on the stack or in a heap? | The object lifetime |
| What are object and information commonly found in a stack frame? | Prologue, Epilogue and Calling Sequence |
| What is a frame pointer? | A pointer used by a compiler for a particular register that always points to a know location |
| What is a calling sequence? | The code executed by the caller immediately before and after the call and of the prologue and epilogue of the subroutine itself. |
| External Fragmentation is where data is allocates a block that is longer than needed; Internal fragmentation is when the block tha have been assigned to an object are scattered through the heap | False |
| What is garbage collection? | The process in which a mechanism identifies and reclaims unreachable objects |
| What is an issue that created by improper or absent garbage collection? | Memory Leaks |
| What is a dangling reference? | The deallocation of an object to soon |
| What is elaboration? | The process by which declaration become active when control first enters a scope |
| What is a static chain? | When a frame's static links, and those of its parents, grandparents, and so on are nested many levels deep. |