I have tried playing with TLink() but always get a Null object ..
Global mylist:TList=CreateList() Type fruit Field name$ End Type Local f:fruit f=New fruit ; f.name$="apple" ; ListAddLast mylist,f f=New fruit ; f.name$="banana" ; ListAddLast mylist,f f=New fruit ; f.name$="pear" ; ListAddLast mylist,f f=New fruit ; f.name$="orange" ; ListAddLast mylist,f f=New fruit ; f.name$="peach" ; ListAddLast mylist,f 'DebugStop f=FindFruit("pear") If f Print f.name$ Else Print "not found" End Function FindFruit:fruit(value:Object) Local t:TLink=ListFindLink(mylist,value) If t Return fruit(t.value()) End Function