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:

48 lines of code

55 lines of code

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

  • 94 instructions before optimizations.
  • 10 instructions eliminated by Dead Code Elimination (6 iterations).
  • 1 instructions eliminated by Jump Normalization (5 iterations).
  • 7 instructions eliminated by Condition Optimization (6 iterations).
  • 4 instructions eliminated by Single Step Elimination (3 passes, 8 iterations).
  • 4 instructions eliminated by Data Flow Optimization (5 iterations).
  • 1 instructions added by Loop Rotation (2 iterations).
  • 1 loop conditions were partially rotated.
  • 1 instructions eliminated by Jump Straightening (6 iterations).
  • 4 instructions updated by Jump Threading.
  • 1 instructions eliminated by Unreachable Code Elimination (3 iterations).
  • 12 instructions eliminated by Print Merging.
  • 55 instructions after optimizations.
  • Code size and number of instantiations by function: Size Times AvgSize Function 44 1x 44.0 <no function> 11 1x 11.0 def waitForFreeUnit(in message, in preface, in unit_type, in initial_flag)
  • Size: 55 instructions, performance: parsed in 19 ms, compiled in 3 ms, optimized in 9 ms.