#interpreter #language #human #resources #machine #assembly #hrm

bin+lib hrm_interpreter

a small interpreter for the HRM language, used in Human Resource Machine

1 unstable release

Uses old Rust 2015

0.2.0 Nov 21, 2018

#55 in #resource

MIT license

56KB
1.5K SLoC

HRM Interpreter

Simple interpreter for the assembler language described in Human Resource Machine.

This interpreter is intended to be used to verify hrm-compiler, especially optimizations (unreachable/not executed code removal, jump optimizations...)

Todo List

  • implement operations
  • implement json-formatted code
  • implement json-formatted input
  • output interpreter state as json at the end of execution
  • insert debugging hooks (brakepoints, tracepoints)
  • (maybe) execute source code directly

How can I run my code with your interpreter?

  1. Install hrm-compiler
  2. Run hrmc <mysourcefile.hrm> - it will generate the json-formatted version of the code executed by hrm-interpreter
  3. Run cargo run -- --code <mysourcefile.json> --input <myinputfile.json>

Dependencies

~2.1–3.5MB
~59K SLoC