Je suis en train de concevoir un langage de programmation qui se compile en un bytecode intermédiaire. Cependant, j'ai beaucoup de mal à concevoir la structure bytecode. Est-ce que quelqu'un a des indications sur la façon de représenter un programme en binaire? Alternativement, y a-t-il des ressources (de préférence gratuites) sur la façon de faire cela? Le plus proche que j'ai trouvé est le description of the Lua interpreter's bytecode.Conception de code octet?
EDIT: Un peu plus d'informations: J'implémente mon propre système de garbage collection qui est fortement optimisé pour l'immuabilité et la simultanéité. Par souci d'efficacité, j'ai besoin d'instructions de bytecode uniques qui permettent aux programmes d'interagir avec le système de récupération de place.
Merci pour votre contribution, mais les fonctionnalités les plus innovantes de ma langue sont dans les structures de données intégrées et la façon dont elles sont collectées, qui doivent malheureusement être mises en œuvre au niveau de la machine virtuelle. – Imagist
@Imagist ... alors peut-être une façon d'avancer serait de construire un moteur de bytecode qui permette un hook externe pour ces choses en créant un moteur de bytecode avec des internes pilotés par les événements et une délégation de fonctionnalités. Ce serait tout à fait génial, cela permettrait aux gens de spécifier dans la Colombie-Britannique quel GC ils aimeraient utiliser (et les choses) –