For this function, I don't think structs were even part of the language when it was created. Even if they were, that would just have been an ugly kludge.

For the other function, the whole point of the function was to fill in a struct. Basically a Get CreateMyStruct sValue1 sValue2 ... to tMyStruct, instead of having 28 lines of Move sValue1 to tMyStruct.sValue1...