Afaik it is not. You could use a JSON Object for example or a Table and use "experimental" pragma for dot overloading (in devel) or better using your own operator like `.?` (which was already be planned to be as being part of the compiler to allow: `foo.?bar` being equal to `foo[bar]` afair :)
Similar to this: template `.?`*[T](a: T, f: untyped): untyped = a[astToStr(f)]