I have a few questions with the use of defstruct in a SKILL program I am currently working on. 1. I am currently globally defining the defstruct, but when I use the make_<name> command in a procedure, it doe not know how to make the structure. I found that if I redefine the defstruct in the procedure it works, but I'd rather define it with the rest of the global data structures I am using and not throughout my code. Any thoughts on what I'm doing wrong? ex. defstruct(mystruct field1 field2 field3) cv = geGetWindowCellView() structList = myproc(cv) procedure( myproc(cv) let(x tlist ; defstruct(mystruct field1 field2 field3) ;This line needs to be uncommented to work properly tlist = nil foreach(x cv~>instanceMasters tlist = append1(tlist make_mystruct( ?field1 "Infoa" ?field2 "Infob" ?field3 "Infoc" ) ) ) tlist ) ) 2. When passing a list of defstructs to another procedure, it seems to be losing it's association as a defstruct and becoming an array. I know the data is stored as an array, but I no can longer reference the elements by the defined structure fields. Thoughts? ex. myproc2(structList) procedure( myproc2(listOfStructs) let( (y) foreach(y listOfStructs someOtherProc(y->field1) ) ) ) Any thoughts would be appreciated. Thanks Matt