Skip to content

desmonHak/VMdoc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Documentacion VM

Version VM: -.-.-


Esta documentacion fue realizada usando la aplicacion Obsidian. Recomendamos descargarla para una correcta lectura.


Licencia

Leeme para saber que puedes hacer con el codigo y la documentacion


Indice de documentos nuevos (instrucciones 0x40-0x64)

Instrucciones

Documento Instrucciones cubiertas
MODS y MODU mods, modu (0x40)
SETCC setcc (0x43)
TRYENTER y TRYLEAVE tryenter (0x44), tryleave (0x45)
Sistema de Strings strmake..strfinalize (0x46-0x54)
STATIC_FIELDS getstatic (0x60), setstatic (0x61)
FFI_RUNTIME gchandle (0x56), getpid (0x57), spawnon (0x58), loadmod (0x59), panic (0x5A), setmethdbg (0x5B), fextend (0x5C), fnarrow (0x5D), dlopen (0x62), dlsym (0x63), callni (0x64)
META_OOP defclass (0xC9), deffield (0xCA), defmethod (0xCB), findclass (0xCC), findmethod (0xCD), addadvice (0xCE), findfield (0xCF), callm (0xFD), proceed (0xFE)
SUPER_INSTRUCCIONES cmpjmp.cc (0x68), cmpjmpu.cc (0x69), decjnz (0x6A), mvtake (0x72), alu3 family (0x73-0x7B: adds3/subs3/muls3/addu3/subu3/mulu3/and3/or3/xor3), loadz (0x7C), loadzh (0x7D)

Arquitectura interna

Documento Contenido
JIT C1 baseline MachineIR, encoder x86-64 hand-rolled, selector, stackmaps, JitRegistry, auto-trigger, ABI vesta_rt
Sistema de Cadenas FLAT/ROPE/SLICE, Compact Strings, interning, hash, GC
Convencion de Encoding Convention A vs B, guia para nuevas instrucciones

Indice de documentos nuevos (HLL support)

Generics y monomorphization

Documento Contenido
Generics SPECIALIZE (0x3A), GenericParam, reificacion

Colecciones nativas

Documento Contenido
Collections VestaList, VestaArrayList, VestaHashMap, VestaHashSet

Sistema de paquetes

Documento Contenido
PackageSystem package.vel, resolucion de dependencias, VESTA_PKG_PATH

IR SSA

Documento Contenido
SSA IR Tipos, opcodes, formato textual, API C++, integracion HLL

Protocolo de depuracion

Documento Contenido
DebugProtocol Protocolo TCP/JSON, comandos, eventos, integracion

Lenguaje Vex (Phase A)

Documentacion del lenguaje de alto nivel Vex que compila a VestaVM bytecode.

Vision general y tipos

Documento Contenido
Vex Vision general, pipeline, anotaciones, inline asm, fases A-H
TiposDatos Primitivos, string, punteros, structs, arrays, Optional, Result

Programacion orientada a objetos

Documento Contenido
OOP Clases, herencia, interfaces, properties, constructores, RAII
ReflexionAOP forName, getClass, getField, getMethod, invoke, @Aspect, proceed()
Generics Monomorphizacion compile-time, name mangling, especialize (0x3A)

Concurrencia y distribucion

Documento Contenido
Async @Async, await, spawn, spawn here/on(N), rspawn, Future, msgsend, msgrecv, synchronized

Gestion de errores

Documento Contenido
Excepciones try/catch/finally, FatalError, panic(), stack trace, RAII

Colecciones y FFI

Documento Contenido
Colecciones ArrayList/HashMap/HashSet/Queue/Deque/TreeMap/TreeSet/Stack como keywords
FFI extern declarativo, ffi_open/sym/call, plugins, vesta_io, vesta_math

About

Documentacion para la VM de mi lenguaje

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors