Cons:
Quote: "1. Requires CD or USB dongle to eb inserted in the machine at all times."
not all the time, and professionals are used to using dongles but for a programming language this is a little unacceptable
Quote: "2. Can be clumsy to express some ideas due to lack of object-oriented features."
couldn't agree more
Quote: "3. Lack of professional production features that could make it difficult to integrate in to a proffessional development environment."
this is more actually due to the IDE currently being used, the lack of CVS or SafeSource for professional programmers is a HUGE problem ... also the IDE itself having bugs doesn't bode well in a professional environment, as it is annoying to quite and end up finding out half you work hasn't been saved, not allowed to open more than a 2 instances (first can be opened without a project, second can be opened with a project), no room for multiple projects, in ability to compile DLL code or dbp version of a DLL which means everything must be encapsulated into a single executable rather than being able to be spread into bitesize sections.
there are many many more reasons why it isn't likely a professional house will ever truely choose DBP over C w/OpenGL or C++ w/DirectX
and the lack of being able to use ASM inline as well as being able to use C/C++ Libraries natively also doesn't help.
-- --
those point are actually why i wouldn't class DBP as a programming language as such yet, still more of a scripter language ... although it does export machine code, the fact that it cannot create self sufficient dependancies and must all be within a single encapsulation as well as not being able to natively take advantage of different CPU types really makes it a one trick pony, essentially making it truely only any good for creating games which don't require complex engines or relying heavily upon new technologies at all.
Although sure you can create applications it certainly isn't by far really the best language for achieveing them within.
Personally think that TGC could learn alot from PureBasic's design, and PureBasic could learn alot from DarkBasic's syntax & indepth 3d engine.
If they could combine what they both had we'd have a pretty remarkable BASIC language on our hand with easy to use syntax yet the depth that come with more seasoned languages like C.
-- --
its not to say that DBP won't be used professionally for actual games development, it's just i don't really see it being a choice if a development company has another option.