Without an explicit type declaration like
        String result, BeanShell
        variables can change their type at runtime depending on the object or
        data assigned to it. This dynamic typing allows you to write code like
        this (if you really wanted to):
// note: no type declaration result = Macros.input(view, “Type something here.”); // this is our predefined, current View result = view; // this is an “int” (for integer); // in Java and BeanShell, int is one of a small number // of “primitive” data types which are not classes result = 14;
However, if you first declared result to be
        type String and and then tried these
        reassignments, BeanShell would complain. While avoiding explicit type
        declaration makes writing macro code simpler, using them can act as a
        check to make sure you are not using the wrong variable type of object
        at a later point in your script. It also makes it easier (if you are so
        inclined) to take a BeanShell “prototype” and incorporate
        it in a Java program.
One last thing before we bury our first macro. The double slashes
        in the examples just above signify that everything following them on
        that line should be ignored by BeanShell as a comment. As in Java and
        C/C++, you can also embed comments in your BeanShell code by setting
        them off with pairs of /* */, as in the following
        example:
/* This is a long comment that covers several lines and will be totally ignored by BeanShell regardless of how many lines it covers */