Github user nickwallen commented on the issue:
https://github.com/apache/metron/pull/740
Yep, you are right. How could I doubt you? For your complex type example
a %define would load the value as a string, and the -z would load it as a map.
So the behavior is different. But the reason it gets loaded as a map is because
it is a map in JSON, not anything to do with Stellar itself.
So I am a little corn-fused about how to match the same functionality with
%define. I'd have to treat it as JSON? The other thought I had would be to
treat it as a Stellar expression and just execute it, but that would actually
be different than `-z`.
---