Mindcode is a high-level language that compiles down to Mindustry Logic - mlog. Mindcode includes higher-level constructs, such as expressions, user-defined functions and control statements. Here are some examples to give you an idea how to use Mindcode:

40 lines of code

47 lines of code

Bug reports, suggestions and questions are welcome at the project page.

  • 79 instructions before optimizations.
  • 1 instructions modified by Temp Variables Elimination (4 iterations).
  • 10 instructions eliminated by Dead Code Elimination (6 iterations).
  • 1 instructions eliminated by Jump Normalization (5 iterations).
  • 4 instructions eliminated by Condition Optimization (6 iterations).
  • 3 instructions eliminated by Single Step Elimination (3 passes, 8 iterations).
  • 4 instructions eliminated by Data Flow Optimization (4 iterations).
  • 1 instructions eliminated by Jump Straightening (6 iterations).
  • 2 instructions updated by Jump Threading.
  • 1 instructions eliminated by Unreachable Code Elimination (3 iterations).
  • 8 instructions eliminated by Print Merging.
  • 47 instructions after optimizations.
  • Code size and number of instantiations by function: Size Times AvgSize Function 32 1x 32.0 <no function> 15 1x 15.0 def waitForFreeUnit(in message, in preface, in unit_type, in initial_flag)
  • Performance: parsed in 28 ms, compiled in 4 ms, optimized in 7 ms.