One of the languages that are used for writing algorithms in the PROMOTIC system is
Visual Basic (its scripting part), often called
VBScript.
At present time, this language is considered to be
obsolete. and even in the PROMOTIC system it is replaced by
JavaScript - see
Comparison of the VBScript and JavaScript languages.
However the applications with
VBScript are still functional.
VBScript vs. Visual Basic and VBA:
Visual Basic is created so as it would help developers quickly and easily to create otherwise complicated
Windows OS applications. The language represented for programming the same as the text editor
WYSIWYG did for creating documents.
Visual Basic for Application (VBA) is the subset of the
Visual Basic language. It means that it is similar to it but it hasn't got all its capability.
VBA is integrated with applications like
Microsoft Excel. In the
Microsoft Office package there is integrated
VBA into the
Microsoft Word application and all other members of the
Office product family.
VBScript is the subset of
VBA. It goes about the very simple yet full programming language. It doesn't offer all comforts of the
Visual Basic and
VBA languages.
VBScript uses the method "sand castle" with respect to the security. Its meaning lies in that
VBScript reserves a part of resources and memory of the computer for itself. It can do anything, it wants in the sand castle but it can never leave it and damage the data in the rest of the computer memory. It means that pure
VBScript cannot access the computer memory neither create or work with files on the disk. In practice, all statements that were "dangerous" in some manner (it means that they could be used for creating a virus), were removed.
Thus we get a very safe environment on one side, but we lose a lot of important and required possibilities at the same time. Like always, the solution exists. In
VBScript it is possible to use objects. Each object can have lots of methods, and these methods can be created so that they can do nearly everything. Each
Pma object (
PmaPanel,
PmaTimer, etc.) is understood as the object in
VBScript, and all its properties and methods can be called. At the same time the special and unique
Pm object can be used in
VBScript containing all required methods which don't belong to any concrete
Pma object. In this object there are, for example, methods for the access to disk. By this, the
VBScript language is extended beyond its limits.