Please Enable the Desktop mode for better view experience

Compiler design all Chapter Termnologies

Compiler Design: Terminologies Glossary – Digitaload Notes

Compiler Design

Terminologies Glossary: Essential Concepts of Compiler Construction.

A comprehensive collection of key terms and definitions across all phases of compiler design, explained in English and Hinglish.

Categories of all notes

📚 Compiler Design: Terminologies Glossary (English + Hinglish)

1. Compiler

English: A program that translates source code from a high-level language into machine code or intermediate code.

Hinglish: Ek program jo high-level language ke code ko machine code ya intermediate code mein badalta hai.

2. Lexical Analyzer (Lexer)

English: The compiler phase that breaks input code into tokens (words or symbols).

Hinglish: Compiler ka wo part jo code ko chhote chhote parts (tokens) mein todta hai.

3. Token

English: A sequence of characters that represents a basic element like keyword, identifier, or operator.

Hinglish: Code ka chhota unit jaise keyword, variable name, ya operator.

4. Syntax Analyzer (Parser)

English: The phase that checks the token sequence against the grammar rules and builds parse trees.

Hinglish: Wo compiler ka hissa jo tokens ko grammar ke rules se match karta hai aur parse tree banata hai.

5. Parse Tree

English: A tree that represents the syntactic structure of the source code according to grammar rules.

Hinglish: Ek tree jo code ki structure ko grammar ke hisaab se dikhata hai.

6. Context-Free Grammar (CFG)

English: A set of production rules that describe all possible strings in a language.

Hinglish: Rules ka set jo language ke sentences banata hai bina context ke.

7. Ambiguity

English: When a grammar allows multiple parse trees for the same input string.

Hinglish: Jab ek sentence ke liye grammar se do ya zyada parse tree ban sakte hain.

8. Finite State Machine (FSM)

English: A machine model used to recognize patterns or tokens in lexical analysis.

Hinglish: Ek model jo tokens ko identify karne ke liye states ke through chalta hai.

9. Regular Expression

English: A formula to describe patterns in strings, often used in lexical analysis.

Hinglish: Pattern banane ka ek tarika jo tokens ko define karta hai.

10. YACC (Yet Another Compiler Compiler)

English: A tool to automatically generate parsers from grammar specifications.

Hinglish: Ek tool jo grammar se apne aap parser banata hai.

11. Intermediate Code

English: A code between source code and machine code, easier to optimize and translate.

Hinglish: Source aur machine code ke beech ka code jo compiler banata hai.

12. Three Address Code (TAC)

English: A type of intermediate code where each instruction has at most three operands.

Hinglish: Intermediate code jisme instructions mein max 3 operands hote hain.

13. Symbol Table

English: A data structure used to store information about identifiers (variables, functions).

Hinglish: Table jisme variable aur function ke details rakhe jaate hain.

14. Type Checking

English: Verifying that operations in the code are used with compatible data types.

Hinglish: Check karna ki variables aur operators sahi type ke saath use ho rahe hain ya nahi.

15. Scope

English: The region in the program where a variable or function is valid or visible.

Hinglish: Program ka wo area jahan variable ya function ko access kiya ja sakta hai.

16. Bootstrapping

English: Writing a compiler in the language it is supposed to compile.

Hinglish: Compiler ko usi language mein likhna jise wo compile karega.

17. Basic Block

English: A straight-line code sequence with no branches except at entry and exit.

Hinglish: Code ka aisa hissa jisme bina branch ke instructions sequence hote hain.

18. Code Optimization

English: Improving intermediate or machine code to make it faster or smaller.

Hinglish: Code ko aisa banana ki wo jaldi chale ya kam space le.

19. Parsing Table

English: Data structure used by parser to decide parsing actions based on current state and input.

Hinglish: Table jo parser ko batata hai ki next step kya lena hai.

20. SLR, LR, LALR Parsers

English: Different types of bottom-up parsers with increasing power to handle complex grammars.

Hinglish: Parser ke types jo grammar ko different tareeke se parse karte hain, jaise SLR, LR, LALR.

21. Shift-Reduce Parsing

English: A parsing method that shifts input tokens on stack and reduces them by grammar rules.

Hinglish: Parsing jisme tokens ko stack par daalte hain aur grammar ke rules se reduce karte hain.

22. Predictive Parsing

English: A top-down parsing technique using lookahead tokens to decide the production.

Hinglish: Parser jo agla token dekh ke decide karta hai kaunsa rule lagana hai.

23. Error Recovery

English: Techniques to handle and recover from errors detected during compilation.

Hinglish: Compiler mein errors ko pakad kar unhe sahi karne ki koshish.

24. Loop Optimization

English: Code optimization focused on improving loops for better performance.

Hinglish: Loops ke code ko optimize karna taki wo fast chale.

25. Data Flow Analysis

English: Technique to gather information about the flow of data in a program.

Hinglish: Program mein data ke movement ko analyze karna.

26. Automatic Parser Generator

English: Software that generates parser code automatically from grammar rules.

Hinglish: Aisa software jo grammar se automatic parser banata hai.

27. Postfix Notation

English: A mathematical notation where operators come after operands, useful in code generation.

Hinglish: Expression jisme operator operands ke baad aate hain, jaise ab+.

28. Quadruples and Triples

English: Intermediate code formats to represent instructions with operands and operators.

Hinglish: Intermediate code ke formats jisme instructions ke details diye hote hain.

29. Syntax-Directed Translation

English: Translation of source code guided by syntax rules using attributes and actions.

Hinglish: Grammar ke rules ke hisaab se source code ka translation karna.

30. Run-Time Stack

English: Stack used to store information about active subroutines during execution.

Hinglish: Execution ke time pe functions ke data ko store karne wali stack.

31. Passes in Compiler

English: Different stages in the compiler where the source code is processed step-by-step.

Hinglish: Compiler ke alag-alag phases jahan code ko ek-ek karke process kiya jata hai.

32. Phases of Compiler

English: Specific steps in a compiler like lexical analysis, syntax analysis, semantic analysis, optimization, and code generation.

Hinglish: Compiler ke alag kaam jaise token banana, grammar check karna, meaning samajhna, code sudharna aur machine code banana.

33. Pass

English: One complete scan of the source code by the compiler or part of the compiler.

Hinglish: Compiler ka ek baar source code ko pura padhna.

34. Lexical Errors

English: Errors due to invalid characters or tokens during lexical analysis.

Hinglish: Galat characters ya tokens jo lexical analyzer detect karta hai.

35. Syntactic Errors

English: Errors caused by incorrect arrangement of tokens that violate grammar rules.

Hinglish: Jab code grammar rules ke against likha ho, tab syntactic error hota hai.

36. Semantic Errors

English: Errors where statements are syntactically correct but meaningless or invalid logically.

Hinglish: Code sahi lagta hai grammar se, lekin logic galat hai.

37. Backpatching

English: Technique used in code generation to handle forward jumps where target address is not yet known.

Hinglish: Jab jump ka address nahi pata hota to baad mein usse fix karna.

38. Attribute Grammar

English: Grammar that associates attributes with grammar symbols for semantic analysis.

Hinglish: Grammar jisme symbols ke saath extra information (attributes) hoti hai.

39. Syntax-Directed Definition (SDD)

English: Rules associating attributes and computations with grammar productions.

Hinglish: Rules jo grammar ke parts ke attributes define karte hain aur unke calculation ka tarika batate hain.

40. Control Flow Statements

English: Statements that alter the sequence of execution like if, while, for loops.

Hinglish: Aise statements jo program ke flow ko change karte hain, jaise if, while, for.

41. Data Types

English: Classification of data like int, float, char, etc. in programming languages.

Hinglish: Variables ke types jaise integer, float, character.

42. Overloading

English: Using the same name for different functions or operators with different meanings.

Hinglish: Ek hi naam se alag alag function ya operator banana.

43. Run-Time Environment

English: The environment where the program runs, including memory, stack, and registers.

Hinglish: Program chalne ka waqat ka system jisme memory aur stack shamil hain.

44. Stack Allocation

English: Allocating memory for variables and function calls in stack during execution.

Hinglish: Memory ko stack mein allocate karna jab function call hota hai.

45. Flow Graph

English: Graph representing the control flow between basic blocks in a program.

Hinglish: Graph jo program ke different parts ke flow ko dikhata hai.

46. Data Flow Graph

English: Graph showing how data moves between operations in a program.

Hinglish: Graph jo dikhata hai ki data program mein kaise flow karta hai.

47. Value Numbering

English: Technique to identify expressions that compute the same value to avoid duplicate calculations.

Hinglish: Same calculation ko ek baar karne ka tareeka.

48. Algebraic Laws

English: Rules like associativity, commutativity used to optimize expressions in code.

Hinglish: Maths ke rules jo code optimization mein use hote hain.

49. Loop Invariant Code Motion

English: Moving code out of loops if the code doesn’t change during iterations to optimize.

Hinglish: Jo code loop mein baar baar nahi badalta usse loop ke bahar le jana.

50. DAG (Directed Acyclic Graph)

English: Graph used to represent expressions without cycles to optimize common subexpressions.

Hinglish: Ek graph jo cycle nahi banata aur expressions ko efficiently dikhata hai.

51. Basic Block Leader

English: First instruction in a basic block.

Hinglish: Basic block ka pehla instruction.

52. Lookahead Symbol

English: Next input symbol seen by the parser to decide parsing action.

Hinglish: Parser ke samne agla token jo wo dekh kar decision leta hai.

53. Conflict in Parsing

English: When parser can’t decide between two actions due to ambiguity or grammar.

Hinglish: Jab parser confuse ho jata hai ki kya action lena hai.

54. Error Recovery Strategies

English: Methods like panic mode, phrase level used to handle errors during parsing.

Hinglish: Errors ko handle karne ke tarike jaise panic mode.

55. Semantic Rules

English: Rules that specify how to compute attribute values during parsing.

Hinglish: Rules jo parsing ke dauran attributes ka value batate hain.

56. Recursive Descent Parsing

English: A top-down parser built from set of recursive procedures for each grammar rule.

Hinglish: Parser jo recursion ka use karke grammar ke rules ko implement karta hai.

57. Bottom-Up Parsing

English: Parsing method that starts from input tokens and tries to build the start symbol.

Hinglish: Parser jo tokens se start karta hai aur start symbol tak pahuchta hai.

58. Deterministic Finite Automaton (DFA)

English: FSM with exactly one transition per input symbol from each state.

Hinglish: FSM jisme har input ke liye ek hi next state hota hai.

59. Nondeterministic Finite Automaton (NFA)

English: FSM where multiple transitions are possible for the same input from a state.

Hinglish: FSM jisme ek input ke liye kai alag state transition ho sakte hain.

60. Closure and Goto Functions (in LR Parsing)

English: Functions to find all possible states and moves in constructing LR automata.

Hinglish: Functions jo LR parser ke states aur moves ko nikalte hain.

61. LR(0) Item

English: A grammar production with a dot at some position indicating how much of the production has been seen during parsing.

Hinglish: Grammar ka ek rule jisme dot lagakar dikhaya jata hai ki kitna part parser ne padha hai.

62. SLR Parsing (Simple LR Parsing)

English: A simplified LR parsing technique using Follow sets to resolve conflicts.

Hinglish: LR parsing ka simple version jo Follow sets use karke decision leta hai.

63. Canonical LR Parsing

English: Full LR parsing method using LR(0) items and lookahead symbols for precise parsing.

Hinglish: Complete LR parsing jisme lookahead symbols ke saath precise parsing hoti hai.

64. LALR Parsing (LookAhead LR Parsing)

English: Combines states of canonical LR parsing with same core items but different lookaheads to reduce table size.

Hinglish: LR parsing ka efficient version jo table size kam karta hai by merging states.

65. Shift-Reduce Conflict

English: A parser conflict when it can either shift the next input or reduce by a rule but can’t decide.

Hinglish: Parser confuse hota hai ki agla token read kare ya rule apply kare.

66. Reduce-Reduce Conflict

English: A parser conflict when two different reductions are possible at the same point.

Hinglish: Jab parser ke paas ek hi position pe do alag rules apply karne ka option hota hai.

67. Ambiguous Grammar

English: Grammar that can generate more than one parse tree for the same string.

Hinglish: Grammar jisme ek sentence ke liye do ya zyada parse tree bante hain.

68. Parser Generator

English: Tool that automatically creates a parser from a given grammar specification.

Hinglish: Aisi tool jo grammar se parser khud bana deta hai.

69. YACC (Yet Another Compiler Compiler)

English: Popular parser generator tool that takes grammar and produces C code parser.

Hinglish: Parser generator jo grammar leke C code mein parser banata hai.

70. Lexical Analyzer (Lexer)

English: The part of compiler that converts source code into tokens.

Hinglish: Compiler ka woh part jo code ko chhote parts (tokens) mein todta hai.

71. Token

English: A sequence of characters grouped as a meaningful unit like keywords, identifiers.

Hinglish: Characters ka group jo ek meaningful word ya symbol banata hai.

72. Regular Expression (Regex)

English: A notation to describe sets of strings used for pattern matching in lexical analysis.

Hinglish: Pattern jo string ke forms ko define karta hai, lexer mein use hota hai.

73. Finite State Machine (FSM)

English: A model of computation used to recognize patterns and implement lexical analyzers.

Hinglish: Ek simple machine jo input dekh kar state change karta hai, lexer mein use hota hai.

74. Deterministic Finite Automaton (DFA)

English: FSM with exactly one possible move from each state on each input symbol.

Hinglish: FSM jisme har input pe ek hi agla state hota hai.

75. Non-Deterministic Finite Automaton (NFA)

English: FSM which can have multiple possible moves for one input symbol from a state.

Hinglish: FSM jisme ek input pe kai alag state transition ho sakte hain.

76. Parse Tree

English: Tree showing the syntactic structure of a string according to grammar.

Hinglish: Tree jo batata hai ki sentence grammar ke hisab se kaise bana hai.

77. Syntax Tree (Abstract Syntax Tree – AST)

English: Simplified parse tree showing the hierarchical syntactic structure without all details.

Hinglish: Parse tree ka simplified version jo sirf important syntax dikhata hai.

78. Three Address Code (TAC)

English: Intermediate code where each instruction has at most three addresses (operands).

Hinglish: Ek tarah ka code jisme har instruction mein teen parts hote hain.

79. Quadruple

English: A representation of three-address code with four fields: operator, argument1, argument2, result.

Hinglish: Three-address code ka form jisme 4 columns hote hain.

80. Triple

English: Similar to quadruple but stores result position implicitly without a separate field.

Hinglish: Quadruple jaisa hi par result column alag se nahi hota.

81. Intermediate Code

English: Code between source and target code used for optimization and easy translation.

Hinglish: Source aur machine code ke beech ka code jo optimize karna aasan banata hai.

82. Symbol Table

English: Data structure used by the compiler to store information about identifiers.

Hinglish: Table jisme compiler variables, functions ke baare mein information rakhta hai.

83. Scope

English: The region of the program where a variable or function is accessible.

Hinglish: Program ka woh hissa jahan variable ya function use kiya ja sakta hai.

84. Type Checking

English: Process of verifying that operations in the program are semantically correct with respect to types.

Hinglish: Check karna ki variables aur operations ka type sahi hai ya nahi.

85. Type Conversion

English: Automatic or explicit conversion of data from one type to another.

Hinglish: Ek type ke data ko dusre type mein badalna.

86. Basic Block

English: A sequence of instructions with no jumps except at entry and exit.

Hinglish: Instructions ka aisa group jisme sirf start aur end pe hi jumps hote hain.

87. Flow Graph

English: Graph representing control flow between basic blocks.

Hinglish: Graph jo dikhata hai program ke blocks ka execution order.

88. Code Optimization

English: Process of improving intermediate or target code to run faster or use less memory.

Hinglish: Code ko aise sudharna ki wo jaldi chale ya kam memory le.

89. Loop Optimization

English: Techniques to improve loops like unrolling, invariant code motion.

Hinglish: Loops ko optimize karne ke tarike taaki wo tezi se chale.

90. Back-End of Compiler

English: The part of compiler responsible for code generation and optimization.

Hinglish: Compiler ka hissa jo machine code banata hai aur optimize karta hai.

Scroll to Top