Макрокоманды исполняются строго по порядку. Да, есть операторы SWITCH, IF и т.д., и даже можно создавать функции, но все это примитивно по сравнению с объекто-ориентированным программированием.
Писать плагин для того, чтобы создать заготовку - крипово. Однако, если нужно управлять роботом, то только макросами не справиться.
Да и скорость вычислений при работе с макросами все же низкая.
Плагины работают в среде PowerMill. А API нужно для того, чтобы интегрировать PowerMill с другим софтом (н-р, с PowerInspect) или использовать PowerMill в среде другого софта (например, DelcamAu