Macros and better "optimize common"

Macros are basically inline functions. You can write a procedure in a macro block and then call it like if it was a function. code2flow will process macro contents the same if it was written by hand in the call spot. Note: you may call other macros inside a macro but call stack depth is limited to 5.

Just FYI, the above code could be written using normal functions, like so:

Use macros or functions according to your need. It's very easy to switch one to another.

Another improvement is better Optimize common feature that you can find in Appearance. How it works is it looks for blocks that have the same role, same text and point to the same other blocks. Such blocks can be merged into one since it's logically equivalent. Improved version is trying much harder to find optimization candidates.

You can see the difference by opening the above example and disabling Optimize common in Appearance.

Hope you enjoy these improvements and feel free to leave your feedback.

Happy code2flowing!