First of all, let's clarify that I'm talking about ObjC prior to version 2.0. So, there is no garbage collection. In a foundation tool (command line objc program), what is the difference between instantiating an object using alloc-init, and using a class method like "[NSSTring stringWithString]" in terms of memory management? And the same question applies for Cocoa applications. Is there any reference I can read up on those things?