-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the go-slang wiki!
This wiki serves to host the documentation of the implementation of Go.
The Go Programming Language Specification can be found here. A Tour of Go can be found here. For the full language, you can install Go here.
This implementation of Go uses a virtual machine architecture. The initial implementation is done by Teow Hua Jun and Lim An Jun, who were students of CS4215 in AY2023/24 Semester 2 and it is open source. It can be found in this page. This implementation aims to extend from the initial implementation to implement more elements of the language.
In this virtual machine architecture, programs are written in Go, which will then be parsed by a parser written in PeggyJS to obtain an Abstract Syntax Tree (AST), which comprises of tokens. Afterwards, these tokens are compiled into Virtual Machine Instructions (VMI), in which the executor will then execute these instructions from top to bottom.
The image below shows the tombstone diagram of the parsing and compilation steps on the left, and the execution steps on the right.
