maze
play

maze Alexander Brown (aab2212) Alexander Freemantle (asf2161) - PowerPoint PPT Presentation

maze Alexander Brown (aab2212) Alexander Freemantle (asf2161) Michelle Navarro (mn2614) Lindsay Schiminske (ls3245) Introduction What is maze? Language Evolution Plan: Proposal: Actual: Object-Oriented Java-like language Game design


  1. maze Alexander Brown (aab2212) Alexander Freemantle (asf2161) Michelle Navarro (mn2614) Lindsay Schiminske (ls3245)

  2. Introduction

  3. What is maze?

  4. Language Evolution Plan: Proposal: Actual: Object-Oriented Java-like language Game design language Java-like imperative language

  5. An Imperative Language with Java-like syntax

  6. Tools

  7. MAZE Architecture

  8. program.maze Scanner Parser AST Analyzer Codegen LLVM IR

  9. Syntax

  10. Basics Methods Primitives Binary Ops Unary Ops Comments

  11. Statements While Loop If / else Return

  12. Testing

  13. Pretty-Printer Menhir Made sure input tokens = output tokens $ menhir --interpret --interpret-show-cst parser.mly --explain

  14. ● Add feature → Add test ● Run ./testall.sh ● Ensure all tests pass

  15. Tests that should fail (with appropriate Tests that should pass: error message)

  16. GCD Passing print an identifier:

  17. DEMO

  18. Fibonacci is cool

Recommend


More recommend