Skip to content

Code Practice & Deterministic Static Evaluator - #45

Open
editor-shannu wants to merge 5 commits into
vicharanashala:mainfrom
editor-shannu:main
Open

Code Practice & Deterministic Static Evaluator#45
editor-shannu wants to merge 5 commits into
vicharanashala:mainfrom
editor-shannu:main

Conversation

@editor-shannu

Copy link
Copy Markdown

📌 Overview

Adds a Code Practice step with a deterministic static evaluator to PyBe learning sessions. Learners now actively hand-code Python solutions from their reasoning rather than only reading AI-generated snippets.

🌟 Key Features & Changes

  1. "Your Python attempt" Editor: Monospace code editor integrated directly into learning session forms.
  2. "Check My Code" Instant Feedback Engine:
    • Pure Static Analysis: Inspects code via pattern rules without code execution (no eval or sandboxing needed).
    • 0–100 Score & Construct Coverage: Evaluates required concepts (loops, conditionals, functions, lists, dicts, etc.) and code craftsmanship.
    • Beginner Syntax Watch: Catches classic slips (single = in if statements, missing colons, Python-2 print, unbalanced brackets).
    • Nudge-based Feedback: Formats feedback as constructive questions rather than harsh compiler verdicts.
  3. Persistent Code Review: Learner code and review metrics are saved with the session and displayed side-by-side with generated solutions.

🎓 Pedagogical Impact

Completes Kolb's Experiential Learning Cycle by fulfilling the 4th quadrant (Active Experimentation) — moving learners from reading generated code to building their own.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant