That problem can already be somewhat solved using existing circuit network techniques. It comes down to keeping the number of items already picked up (or still missing) in some kind of memory cell and using that to control the inserter. Your suggestion would only put that same kind of logic inside the inserter behavior code (and outside player control). Controlling the inserter stack size via circuit is what missing (but might be coming in 0.15).AssaultRaven wrote:I haven't worked with circuits much, but it sounds to me like the biggest single problem, inserters, would be solved with some kind of asynchronous control system for inserters. As in, being able to tell an inserter, "move X items", with the details of implementing that being left to the inserter. (This would presumably include grabbing less than its full stack size if needed.)
Anyway, your "asynchronous control system" will at some point need to reset, since it needs to start over eventually. When will it reset? Would that be circuit controlled? Otherwise how can you control when inserters put stuff into a smart furnace, for example. Need to stop smelting iron plate in order to switch over to copper plate or steel. That means stopping the input inserter.
This is Factorio, no control circuit is complete until it implements a full cycle and can repeat. Because you want continuous smelting/crafting to keep happening. So you'll then need some kind of control circuit to control the "asynchronous control system". Or should that also be included into the inserter behavior?
The complexity kinda snowballs fast. What's needed is good tools to handle the complexity, scalable tools.