How blazeboyz0/kekno works
Kekno is a C++ language interpreter. Its principal workflow accepts source in either a file or interactive session, compiles it into bytecode, then executes that bytecode in a VM. The graph also preserves the runtime value model and module-loading capability evident in the headers and VM excerpt. The README is empty; compiler and VM internals are only partially excerpted, so the graph omits unsupported feature-level call paths.
Main entry points: main.cpp CLI and REPL · compiler.cpp Compiler · vm.cpp Virtual machine · chunk.h Chunk interface
Components 14
Source Front End
- CLI and REPL
src/main.cpp - Lexer
src/lexer.cpp - Token definitions
include/token.h - Lexer interface
include/lexer.h
Bytecode Compilation
- Compiler
src/compiler.cpp - Compiler interface
include/compiler.h - Bytecode chunk
src/chunk.cpp - Chunk interface
include/chunk.h - Opcode set
include/opcode.h
Runtime Execution
- Virtual machine
src/vm.cpp - VM interface
include/vm.h - Module loading
src/vm.cpp
Language Model
- Runtime values
include/value.h
Other components
- Script author
Connections 14
- Script author → CLI and REPL: provides source
src/main.cpp - CLI and REPL → Compiler: compiles source
src/main.cpp - CLI and REPL → Virtual machine: runs bytecode
src/main.cpp - Compiler → Lexer: scans source
- Lexer → Token definitions: produces tokens
src/lexer.cpp - Compiler → Bytecode chunk: emits bytecode
src/compiler.cpp - Bytecode chunk → Runtime values: stores constants
src/chunk.cpp - Chunk interface → Opcode set: uses opcodes
include/chunk.h - Compiler interface → Lexer interface: declares lexer
include/compiler.h - Compiler interface → Chunk interface: targets chunk
include/compiler.h - VM interface → Chunk interface: accepts chunk
include/vm.h - VM interface → Runtime values: uses values
include/vm.h - Virtual machine → Module loading: loads modules
src/vm.cpp - Virtual machine → Opcode set: dispatches instructions