Skip to content

Latest commit

 

History

History
238 lines (176 loc) · 5.7 KB

File metadata and controls

238 lines (176 loc) · 5.7 KB

🎯 START HERE - CS 441 Program 3

Student: Gabriel Morais
Academic Level: Senior, Computer Science
Assignment: CS 441 Program 3 - Expression Evaluator with Environment

Welcome! This is your complete CS 441 Program 3 submission package.

Important Note: This project was developed with AI assistance (GitHub Copilot with Claude Sonnet 4.5). The AI helped accelerate development, but I provided requirements, reviewed all code, identified bugs, validated functionality, and ensured I understood every concept. The AI was a tool, not a replacement for learning.


⚡ Quick Start (2 minutes)

1. Run the Tests

cd /Users/galbmorais/program3
racket -e '(require "expression-evaluator.rkt") (run-tests)'

✅ All tests should pass

2. Try the REPL

racket run-repl.rkt

Then type:

'(define x (num 10))
'(add (id x) (num 5))
(env)
(quit)

📋 Assignment Deliverables

# Deliverable File(s) Status
1 Working Code expression-evaluator.rkt, run-repl.rkt ✅ Complete
2 LLM Prompts LLM_PROMPTS.md ✅ Complete
3 Generated Code MACHINE_GENERATED_CODE.md ✅ Complete
4 Video Use VIDEO_GUIDE.md ⏳ To Record

📖 Documentation Guide

If You Want To...

Understand the code: → Read README.md (comprehensive documentation)

Use the REPL: → Read QUICK_REFERENCE.md (syntax reference)

See the prompts: → Read LLM_PROMPTS.md (AI prompts used)

Track AI contributions: → Read MACHINE_GENERATED_CODE.md (code tracking)

Record your video: → Read VIDEO_GUIDE.md (complete script)

Check submission: → Read SUBMISSION_SUMMARY.md (checklist)

Get overview: → Read PROJECT_OVERVIEW.md (complete guide)


🎬 Recording Your Video

Preparation

  1. Review VIDEO_GUIDE.md (8 pages, detailed script)
  2. Run tests to show they work
  3. Practice REPL demo
  4. Think about reflection questions

What to Cover (5-8 min)

  • ✅ Code demonstration
  • ✅ LLM usage (GitHub Copilot with Claude Sonnet 4.5)
  • ✅ What was helpful/not helpful
  • ✅ Semester reflection
  • ✅ Advice for students and faculty

🎓 What This Project Demonstrates

Technical Skills

  • ✅ Either/Result type system
  • ✅ Functional state management
  • ✅ Expression evaluation
  • ✅ Environment/variable handling
  • ✅ Comprehensive error handling
  • ✅ REPL implementation

AI Development Skills

  • ✅ Effective prompt engineering
  • ✅ Code review and verification
  • ✅ Iterative improvement
  • ✅ Honest documentation
  • ✅ Understanding AI limitations

📊 Quick Stats

  • Lines of Code: ~280 (100% AI-generated, 0.4% modified)
  • Documentation: ~1200 lines across 8 files
  • Test Cases: 10 comprehensive tests
  • Development Time: ~25 minutes active work
  • LLM Used: GitHub Copilot (Claude Sonnet 4.5)

✅ Pre-Submission Checklist

Code

  • All tests passing
  • REPL working
  • Error handling comprehensive
  • Code well-documented

Documentation

  • README complete
  • Prompts documented
  • AI contributions tracked
  • Video guide prepared

Video (To Do)

  • Code demonstration recorded
  • Development discussion included
  • Reflection complete
  • Advice for students/faculty shared

🚀 File Navigation

program3/
│
├── START_HERE.md ← You are here!
│
├── 📝 Core Implementation
│   ├── expression-evaluator.rkt  (Main code with tests)
│   └── run-repl.rkt              (REPL launcher)
│
├── 📋 Assignment Deliverables
│   ├── LLM_PROMPTS.md            (Deliverable #2)
│   ├── MACHINE_GENERATED_CODE.md (Deliverable #3)
│   └── VIDEO_GUIDE.md            (Deliverable #4 guide)
│
└── 📚 Supporting Documentation
    ├── README.md                  (Full documentation)
    ├── QUICK_REFERENCE.md         (Syntax reference)
    ├── SUBMISSION_SUMMARY.md      (Completion checklist)
    └── PROJECT_OVERVIEW.md        (Complete guide)

🎯 Your Next Steps

Right Now (5 min)

  1. ✅ Run the tests to verify everything works
  2. ✅ Try the REPL with a few commands
  3. ✅ Skim through README.md

Before Recording (15 min)

  1. ⏳ Read VIDEO_GUIDE.md thoroughly
  2. ⏳ Review your semester reflections
  3. ⏳ Prepare examples to show

Recording (10 min)

  1. ⏳ Follow VIDEO_GUIDE.md structure
  2. ⏳ Show working code
  3. ⏳ Share honest reflections

Submission

  1. ⏳ Upload all .rkt files
  2. ⏳ Upload all .md files
  3. ⏳ Upload video file

💡 Key Insights to Mention in Video

What Worked Well

  • AI understood complex requirements from assignment
  • Generated idiomatic functional Racket code
  • Created comprehensive tests automatically
  • Excellent at documentation

What Needed Attention

  • One subtle bug (mutable vs immutable hash)
  • Important to understand generated code
  • Cannot blindly trust AI output
  • Verification still essential

Big Picture

  • AI is a powerful amplifier, not replacement
  • New skills needed: prompting, reviewing, verifying
  • Understanding fundamentals becomes MORE important
  • Future focus: specification and validation

🎉 You're Ready!

Everything is complete except the video recording.

When you're ready to record: → Open VIDEO_GUIDE.md

Need quick reference while coding: → Open QUICK_REFERENCE.md

Questions about implementation: → Open README.md


Project Status: ✅ COMPLETE
Your Task: 🎬 Record video using VIDEO_GUIDE.md
Time Needed: ~30 minutes (prep + record)

Good luck! 🚀


Generated with GitHub Copilot (Claude Sonnet 4.5)
December 14, 2025