************ WinBatch, WebBatch and WinBatch+Compiler 2018A Released ***********

Started by td, February 01, 2018, 02:22:51 PM

Previous topic - Next topic

td




We have just released WinBatch, WebBatch and WinBatch+Compiler 2018A.

Customers with a current license may download the latest version of the software from the download page.

http://www.winbatch.com/download.html

If you do not have a current license and are interested in this and future releases, please visit our software purchase page. You can easily order online.

https://commerce.winbatch.com





WB 2018A Feb 01, 2018

  DLL 6.18ara First showing up in WB 2018A
   
    Replaced copyrights, icons and embedded images.

    Modified uninstall program to account for multiple paths in the TEMP and TMP environment
    variables.
 
    Changed the sort algorithm used by the ArraySort function to eliminate worst case slow
    sorts. The change also prevents the 1637 error, "Error accessing array data" when
    sorting a large array with frequently repeating sort data.
   
    WinBatch Studio:
       Fixed unhandled exception in WIL file type syntax coloring.
       Fixed memory corruption problem in output window implementation.
     
       This release of WinBatch Studio includes the new Lexical Analyzer module:   
         Added an 'Analyze' menu item to the debug menu bar menu. Select this menu item to
         invoke the Syntax Analyzer on the current foreground document. The Syntax Analyzer
         tool scans the current script for syntax errors without actually executing the script.
         Any errors are displayed in the "Syntax Analyzer" tab of a WinBatch Studio output
         window automatically displayed by the Analyzer.
         
         Each error line in the Analyzer window represents one error.  A single line in the
         script can produce more than one error.  Error lines consist of a full path-name of the
         file being analyzed, the row and column numbers of the error's location in the script,
         the word "error" or "warning", an error number, and a brief error description.

         Using your mouse to left click on an error in the Syntax Analyzer window will set the
         WinBatch Studio input cursor to the beginning of the line in the current script that
         contains the error.

         A few thing to remember when using the Syntax Analyzer:
           Variable values are not checked because the script is not executed.
           The Analyzer cannot determine the resulting syntax of substituted variables.
           The grammar of function parameters is checked but not the correctness of parameter
           values.
           The Analyzer can be used on WIL menu files but menu names line generate "unexpected
           item found online" errors.  Ignore these errors.
           Files included in the current script using an "#include" statement are not analyzed.
           WIL function parameter counts ARE checked.
           Extenders are not loaded so extender function parameter counts are not checked.
           WinBatch function parameter counts are not checked.
 
       
    WinBatch Compiler:     
       This release of the WinBatch Compiler also includes the Lexical Analyzer module:
         The Compiler's main dialog window contains a new "Analyze source for error" checkbox.
         When this check box is checked, the compiler will use the Lexical Analyzer module to
         scan the target script for errors before compilation begins. 
       
         If any errors or warnings are found, the Compiler can display a dialog showing a list
         of errors and warning. Press this dialog's "Continue" button to proceed with the
         compilation or press the "Cancel" button to either return to the main Compiler window
         or exit the compiler when the compiler starts with a command line target. In all cases
         pressing the "Cancel" button prevents the target from being compiled.

         The "Analyze source for errors" checkbox option is global.  Once it is checked, syntax
         checking is performed on all compiles by the WinBatch+Compiler user until it is
         unchecked.
       
         If the "Analyze source for errors" option is selected, the compiler is invoked with the
         target script as a command line parameter, and the target script's "cmp" file contains
         the "silent=1" option; the Compiler generates a text file of any found errors.  The
         syntax error dialog is not displayed.

         The compiler also generates an error file instead of displaying the syntax error dialog
         when it is invoked with a "cmplst" file as a command line parameter.

         In both instances, the error file name is the target script's file name with a time
         stamp and a ".txt" file extension.  The file is placed in the target's location on the
         file system.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade

td

If you installed the latest version of WinBatch+Compiler over an older version and you don't like the mix of old and new icons on the desktop, start menu and taskbar, type the following at an elevated command prompt.

ie4uinit.exe -ClearIconCache
ie4uinit.exe -show

These commands clear the system's icon cache and reload all visible icons from their respective sources on Windows 10.   Haven't tried it but the same procedure may also work on some older versions of Windows.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade

rw_baker

Thanks for the Symbolic Checker!  The following registers an error...if this is included in your "exclusions, please ignore:
symbol = "x"
i = 1
x1 = 4
pos = %symbol%%i%
message(pos,"4")
exit

rw_baker

kdmoyers

I'm willing to give the analyzer a pass on this one. 
Code (winbatch) Select
pos = %symbol%%i%
You can create infinitely bizarre looking lines of code with substitution, I can't expect it to make sense of all of them. 

If you really need this effect, you could try
Code (winbatch) Select
symbol = "x"
i = 1
x1 = 4
pos = symbol : i
pos = %pos%
message(pos,"4")
exit

which it does not complain about
The mind is everything; What you think, you become.

rw_baker

I ran the Checker on a large script that I wrote 12 years ago.  I was not trying to select from an "infinitely bizarre looking" list of creations.
If I were coding today, being 12 years older,  I would most likely code it somewhat as you suggest, to be safe.
Thanks for your suggestion, however, I was not asking for a way to change the coding of the script.
The example is simply an example of correct syntax that is flagged, that's all. 

rw_baker

rw_baker

Using Studio in 2018A...I'm trying to arrange the icons at the top.  I get no response from:
Window > Arrange Icons
Can you help, please?
rw_baker

kdmoyers

Quote from: rw_baker on February 09, 2018, 05:39:45 PMI was not trying to select from an "infinitely bizarre looking" list of creations.
(chuckle) yes of course you're quite right.  No offense intended.

I guess I meant that without actually executing the program, the analyzer can't know if substitution will result in a correct line of code or not.  Some very strange looking constructions might, after substitution, actually result in good code.  And a very simple looking line might result in an error.  How could it ever know?

So, perhaps the analyzer just passes a very few ordinary patterns, and after that, it calls it an error.

Just a guess on my part.
The mind is everything; What you think, you become.

rw_baker

Thanks for the response...I agree with what you said, for
pos = %symbol%%i%
The job of the "full interpreter" on the right side of an assignment operator:
1) syntactic analysis of the right side - if error, throw an error, otherwise,
2) semantic analysis - if this step has no error it can go ahead and evaluate the left side of the assignment operator, then
3) execute the statement
The "Studio standalone "Syntax Analyzer" is not the same one used in the full interpreter...not surprising...
Like you said "...just passes a very few ordinary patterns, and after that, it calls it an error".
In the end, as I said originally, I very happy having this tool available!
I find this is an interesting way to spend some time over the weekend...no?

rw_baker

td

"Variable values are not checked because the script is not executed.
The Analyzer cannot determine the resulting syntax of substituted variables."
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade

td

Quote from: rw_baker on February 10, 2018, 05:20:47 AM
Using Studio in 2018A...I'm trying to arrange the icons at the top.  I get no response from:
Window > Arrange Icons
Can you help, please?
rw_baker

WinBatch Studio allows you to iconize multiple documents inside the main studio window.  Once iconized you can drag the document icons to any location on the main window.   The Arrange Icons menu item allows you to return them all to the bottom of the main window.
"No one who sees a peregrine falcon fly can ever forget the beauty and thrill of that flight."
  - Dr. Tom Cade