pyndustric icon indicating copy to clipboard operation
pyndustric copied to clipboard

A Python compiler for Mindustry's logic processors assembly language

Results 13 pyndustric issues
Sort by recently updated
recently updated
newest added

Draw commands often refer to paired x,y values. I've now mostly finished vectorized operations, including the ability to "unpack" vectors into commands like `dst()`, `atan2()` and `Unit.move_to()` that require x...

Discussion from #50: > **Lonami** > > [lists] are tricky because they're no longer a "simple value" which is held in a single variable. > > While `for x in...

Initially we stored instructions as pure strings. I've now converted all (or perhaps nearly all) instructions to be members of the `Instruction` class. Currently this is a string-subclass (hence immutable)...

A variable is "never-assigned" if it never appears as the "output" of any instruction that stores a value in an output (like set, op, sensor, ulocate, or uradar). There are...

We've talked elsewhere about potentially introducing some analog of Python's name spaces. Currently, we do this only for the args to out-of-line functions, giving them mangled names to keep them...

Consider the following while loop: ```python y = 0 while (y+3)

Mindustry is a 2D game, and much mindustry logic involves effective manipulation of 2D x,y vectors, where the same thing is done with both the x and y components. Python...

Probably the most controversial change I've been thinking about making is removing the stack, which (0) currently is used only as a conduit for passing arguments and return-lines to functions....

Consider the following source code: ```python def f(i): return i x = f(1)+f(2) ``` This currently compiles to instructions that conclude with `op add x __pyc_ret __pyc_ret`, which you'll notice...

Split off https://github.com/Lonami/pyndustric/pull/12/files#diff-852dce7acd90bf3bfbde1cec63522f7204b9c209cc52b3e40d23bb6f3202ef7fR29. Given mlog's infinite "registers", the stack is only necessary when/if we do recursion. And even then, the stackless approach could be applied by default unless recursion is...