Another way to group functionality is by creating the new in latest version “Custom Functions”. Custom functions are similar to macros, with the big difference being that the implementation is not on a separate asset, but rather part of the same flowscript. So apparently if re-usability even outside of the flowscript in which the custom function is designed is required, then Macros are indeed the way to go.
The problem with a lot of macros, is that since each Macro is a separate asset, each of those macros are instantiated, deserialized and initialized when a flowscript that use those macros is initialized as well.
I will certainly need to improve macros initialization though. I’ve tried in the past without much success, since json deserialization in itself creates allocations, even though I have greatly optimized the json serializer used. I will give it another go though.