In a nutshell, DelphiScript is an OLE scripting language, like VBScript or JScript, but derived from Standard Pascal (not Object Pascal).
It has extensions to support OLE objects and the OLEVariant type. It then treats all Standard Pascal types as OLEVariant, or it does not support them if they do not fit that model -- pointers, files, records (replaced by untyped arrays). Declaring the type of a variable or parameter is allowed, but has no effect. Type definitions are not supported.
Another extension supports exception handling in the same way as Object Pascal does.
Contrary to Standard Pascal, there are units. But, as DelphiScript is meant for scripts, that is, self-standing routines, units are simply groupings of scripts in one file. There is no unit structure (interface, implementation, initialization, etc.).
DelphiScript supports almost all Standard Pascal operators and Standard Pascal routines (for example,
copy), minus those that deal with I/O or type conversions (e.g.
str). Type conversions are implicit. Standard Pascal routines are listed in the Delphi Help or Object Pascal Guide as belonging to System. There are no set operators, but they are replaced with procedures. DelphiScript itself does not support routines that do not belong to System. However, several of these are supplied through a plugin extension, Utilities.