onlyafly / oakblue

Oakblue is a virtual machine and assembler for that virtual machine, as a learning project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Oakblue Virtual Machine

Oakblue is a virtual machine and assembler for that virtual machine, as a learning project.

The program started off as an implementation of the LC3 abstract machine.

Using

Developing the interpreter/compiler

Architecture of assembler:

ASM file -> scanner -----> parser -----> analyzer -----> emitter ----------> BIN file tokens CST AST bytecode

Architecture of VM:

BIN file -> executor

Other

To lint the project, use golangci-lint.

The project is laid out according to these guidelines: Golang Standards Project Layout

About

Oakblue is a virtual machine and assembler for that virtual machine, as a learning project

License:MIT License


Languages

Language:Go 97.4%Language:Assembly 2.4%Language:Makefile 0.2%