Rubric for Programming Language
Implementation
1. Lexical Analysis
Sub-Criteria Points Description Sample Input Expected Output / Behavior
Tokenizer Recognizes let x = 10 Breaks into: 'let', variable x, '=',
7 + 5;
Correctness valid tokens number 10, '+', number 5, ';'
Identifies let x = 10
Error Handling 5 @ 5; Displays error: Invalid token @
invalid tokens
No redundant let x = 10; Skips comments/whitespace,
Efficiency 3 // comment
steps minimal processing time
2. Syntax Analysis
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Parser Accepts valid if (x > 5) { Builds correct internal
10 print("hi"); }
Correctness syntax forms structure
AST Accurate AST x = a + b * c; AST: Assign(x, Add(a,
7 Multiply(b, c)))
Generation structure
Error Detects if x > 5 {
Syntax error: missing
3
Handling malformed syntax parentheses
3. Semantic Analysis
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Symbol Table Tracks variable let x = 10; Redeclaration warning
5 let x = 15;
Management declarations & scope or error
let x = "hi" + Error: cannot add
Type Checking 5 Enforces type rules 5; string and number
Detects semantic print(y); Error: Variable y is
Error Detection 5 not defined
violations
4. Execution and Evaluation
Expected
Sub-Criteria Points Description Sample Input Output /
Behavior
Expression Computes print(2 * (3 + 4));
6 Prints: 14
Evaluation expressions
Control Flow of control: while (i < 3) { print(i);
6 i = i + 1; } Prints: 0 1 2
Structures if, while, for
function square(x) {
Function Calls and returns return x * x; }
4 Prints: 25
Execution from functions print(square(5));
CLI/REPL Accepts runtime > let name = input(); Executes
4 print("Hello, " + name);
Support input interactively
5. Memory Management
Expected
Sub-Criteria Points Description Sample Input Output /
Behavior
Proper
Variable let x = 5; x = 6;
Variable x
4 initialization &
Lifecycle updated correctly
updates
GC / Manual
Memory cleanup let x = [1, 2, 3]; x = Memory cleared
Memory 4 null;
managed or collected
Handling
Access to Prevents use-after- let x = [1, 2, 3]; Error: access to
2 delete(x); print(x[0]); deleted object
Deleted Object delete
6. Error Handling and Debugging
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
No interpreter let x = 10 / 0;
Runtime Errors 4 Error: division by zero
crash
Debugging Error message with let x = "hi" + Shows helpful message
3 5;
Feedback line info with line number
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Logging / Optional execution toy run [Link] Shows token stream,
3 --verbose
Verbose Mode trace parse trace, eval steps
7. User Interface / CLI
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Clean interaction with toy run [Link]
Usability 3 Executes program
CLI
CLI Supports flags and toy run [Link] - Executes with debug
2 -debug
Arguments script input mode
Output Neat and consistent print("Hi")
2 Output: Hi
Format display
toy --help
Shows command list
Help / Docs 3 Displays usage/help
and usage
8. Advanced Features
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Object- class Person { greet() {
Class/object print("Hello"); } }
Oriented 4 let p = new Person(); Output: Hello
handling
Support [Link]();
Anonymous
Lambda let add = (x, y) => x +
3 functions y; print(add(2,3)); Output: 5
Functions
supported
Concurrency / Parallel execution parallel { print(1); } Output: 1 2 (order
3 parallel { print(2); }
Async (e.g., threads) may vary)
New feature runs
Feature plug-in repeat 3 times {
Extensibility 2 print("Hi") } with minimal core
flexibility
changes
9. Presentation and Demonstration
Expected Output /
Sub-Criteria Points Description Sample Input
Behavior
Feature Demonstrates all Demo using examples Features shown with
4
Walkthrough major features from each rubric section explanations
Clarity & Clear and engaging Presenter walks through Maintains interest and
2
Engagement delivery slides/code clarity
Code & Demo Error-free Run test suite and live All code runs without
2
Quality execution demo issue
Professional Styled slides and Meets standard of
Slides/Attire 2
presentation style professional dress academic/tech demo
Total Points: