2004-09-11 01:12 PM
2004-09-11 08:13 PM
oreopoulos wrote:Since you have mentioned elsewhere that you are a programmer - you can observe quite well that there is a vast difference between autolisp and vba and GDL. GDL is not a scripting language ... it is a language and interpretter for generating 3D geometry: Geometric Description Language. Yes, it has some file I/O capabilities as well and has aspects that interact with the database and calculate menu (properties, components, descriptors). But, it has no features at all that interact with the ArchiCAD environment itself. In contrast, autolisp and VBA are scripting language that have an interface to the complete AutoCAD API for automation of any aspect of AutoCAD, including geometric automation.
GDL will be much more powerfull if we could proccess a selection set , ask the user to give a number of points or proccess keybord strokes.
This feature is present in autocad (autolisp and vba ) since the beggining.
I dont think is too hard and it will give a tremendous number of applications.
2004-09-11 11:58 PM
2004-09-12 02:12 AM
oreopoulos wrote:Being interpreter based is not the issue. The GDL language and interpreter are not designed to do these kinds of things. Autolisp and VBA have language (and interpreter, code, COM/OLE interfaces, and more) features that permit references to external procedures and interfaces...particularly the API for AutoCAD. For GDL to do such things, it would be more than a simple (as you suggested) addition ... it would be a major overhaul of both GDL as a language, the interpreter, and even AC itself to expose the necessary functionality in a way that could be used by such an interpreter. (Don't forget: GDL does not now even have the ability to call a user function or subroutine with parameters ... so there is no notion of variable scope, reference/value parameters, runtime parameter stack, type checking, etc., much less external linkage.)
Autolisp and vba are interpeter based too.
Sorry but i dont see the difference that makes gdl non scripting.