Go Interpreter in Python

A Python-based interpreter for the Go programming language, developed as part of a Master's thesis project.

Project Overview

This project presents a Python-based interpreter for the Go programming language, developed as part of a Master’s thesis. The interpreter is designed to parse and execute Go code, providing insights into language interpretation and compiler construction.

Features

  • Go Language Parsing: Implements a parser capable of understanding Go syntax and semantics.
  • Code Execution: Executes Go code by interpreting the parsed abstract syntax tree (AST).
  • Educational Resource: Serves as a learning tool for those interested in language interpreters and the Go language.

Usage

To explore and utilize the Go interpreter:

  1. Clone the Repository:
    git clone https://github.com/DarioDiPalma-DDP/Go-Interpreter-In-Python.git
    
  2. Set Up the Environment: Ensure Python 3.8 or later is installed. Create a virtual environment and install the necessary dependencies:
    python3 -m venv venv
    source venv/bin/activate
    pip install --upgrade pip
    pip install -r requirements.txt
    
  3. Run the Interpreter: Execute the main script to start the interpreter:
    python main.py
    

    You can then input Go code to be interpreted.

Dependencies

  • Python: Version 3.8 or later
  • PLY (Python Lex-Yacc): For lexical analysis and parsing

For detailed information and updates, please refer to the GitHub repository.