There are no "macros" in Gimp, in the usual meaning of the term (more or less: recording you actions and replaying them).
Gimp is designed to be extensible with scripts and plugins. These two are technically different, scripts are in TinyScheme (aka script-fu) and interpreted by the built-in script interpreter. Plugins are independent processes written in potentially any language, even if in practice you are restricted to languages for which there is a Gimp interface. For a long time this meant only C, but since 2.6 there is also an interface for Python. But to muddy up things, most python "plugins" are written like scripts: they are mostly glue between calls to the Gimp API, like the script-fu ones, so you will hear about Python scripts (but they are really plugins).
IMHO, in 2018, the only merits of script-fu are historical: this was a small footprint interpreter required by the memory-constrained computers of the 90s. But now we have plenty of RAM and Python is more common, easier to write and much more powerful.
PS: Your image link doesn't work....
Gimp is designed to be extensible with scripts and plugins. These two are technically different, scripts are in TinyScheme (aka script-fu) and interpreted by the built-in script interpreter. Plugins are independent processes written in potentially any language, even if in practice you are restricted to languages for which there is a Gimp interface. For a long time this meant only C, but since 2.6 there is also an interface for Python. But to muddy up things, most python "plugins" are written like scripts: they are mostly glue between calls to the Gimp API, like the script-fu ones, so you will hear about Python scripts (but they are really plugins).
IMHO, in 2018, the only merits of script-fu are historical: this was a small footprint interpreter required by the memory-constrained computers of the 90s. But now we have plenty of RAM and Python is more common, easier to write and much more powerful.
PS: Your image link doesn't work....