An interpreter for 9608 pseudocode
Pseudo is an interpreter for 9608 pseudocode, a pseudocode syntax used in Cambridge International AS & A Level Computer Science.
Setup
pip install pseudo-9608
Usage
Running psuedocode on a file
import pseudocode
pseudocode.runFile('myfile.pseudo')
Running psuedocode on a string
import pseudocode
code = """
OUTPUT "Hello World!"
"""
pseudocode.run(code)
Chapters
This project is also an attempt to write a programming book in a new style. Each chapter of this book is written as a pull request.
- 01a Scanning
- 01b Tokens
- 02 Expressions
- 03 Evaluation
- 04 Statements
- 05 Interpreting
- 06a Variables
- 06b Assignment
- 06c Retrieving variables
- 07 Resolving
- 08 Static typing
- 09 Conditionals
- 10 Loops
- 11 Input
- 12a Procedures
- 12b Procedure calls
- 12c Passing by reference
- 13a Functions
- 13b Loose ends
- 14a Reading from source
- 14b Line numbers
- 14c Referencing source code
- 14d Column info
- 15 File IO
- 16a OOP: Expressions
- 16b OOP: Statements
- 16c OOP: Expression Statements
- 16d OOP: Variables
- 16e OOP: Values
- 16f OOP: Frames
- 16g OOP: Error reporting
- 16h OOP: Tokens
- 17 Statement hierarchies
- 18a Boolean
- 18b Logical operators
- 18c Fix: logical operators (This is an addendum to 18b)
- 19 REALs
- 20 Packaging
- 21a Test: Data passing
- 21b Test: Checking output
- 21c Test: Checking Errors
- 22a Scoping: Recursion
- 22b Scoping: System
- 23a Object: Scopes
- 23b Object: Attributes
- 23c Object: ARRAY
- 24a Improvements: type annotation
- 24b Improvements: Decoupling
- 24c Improvements: Type Relationship
- 24d Improvements: Parser
- 24e Improvements: Resolver
- 24f Improvements: Interpreter
- 24g Improvements: Pseudo