Same in Nim. You can inspect the intermediate C code to see that a tuple
type MyTuple = tuple[x: int, y: float]
becomes a C struct:
struct Mytuple115004 {
NI Field0;
NF Field1;
};
And similary for an object:
type MyObject = object
x: int
y: float
struct Myobject115010 {
NI x;
NF y;
};