The following is my list of the Pros and Cons of Accelr8 Open DCL Lite v2.21 running on Windows (WinXP, Win7, Win10). [It also includes a little bit of testing on Win98 and WinME.] This page was created initially in late 2002 when trying to determine the best way I could get a DCL environment running -- preferably a free one, and preferably one that ran on Windows initially but could be ported to Linux. In early 2012 (and most every year since then), I've finetuned the list.
The analysis involves comparing Accelr8 Open DCL Lite v2.21 primarily with OpenVMS DCL, but also involves comparisons with WinXP / Win7 / Win10 CMD commands, 3rd-party utilities, etc.
Summary: Enough of Accelr8 Open DCL Lite works so can use frequent Open VMS DCL commands -- DIR, DIFF, SEARCH, DELETE (even DELETE /CONFIRM), TYPE, IF/THEN/ELSE, GOTO/GOSUB -- and can use symbols, logicals, and some lexicals, while still retaining the VMS-style freedom of specifying (easily remembered) qualifiers almost anywhere in the command line.
Following works enough to be quite useable:
Following are available but have not been tested, since I don't use them:
Added functionality is quite helpful:
Redirection of SYS$OUTPUT works well enough to be useful.
DCL Lite is usually quick.
A useful (though terse) Readme.txt file is included.
Honors system-wide SYLOGIN.COM in installation directory.
Honors user-specific LOGIN.COM in user's "home" directory [see distributed Readme.txt for details].
Can be enhanced with Windows MS-DOS and CMD Prompt batch procedures, DCL Lite procedures feeding from an enhanced SYLOGIN.COM, and user environmental symbols for a very flexibly called command environment which:
Very useful jonesrh add-ons dependent on DCL Lite:
The method of simulating OpenVMS file version #s using the .~n~ extension to the filetype can be useful to avoid accidentily overwriting files (however I've rarely needed it).
Open DCL Lite can coexist with Valentin's PC-DCL and they can each utilize the other's native capabilities. See Mutual Extensibility of Open DCL Lite and PC-DCL for more details on how PC-DCL and Open DCL Lite can coexist and mutually extend one another.
Summary: Accelr8 Open DCL Lite implements only portions of the Open VMS DCL command set, but its a very useful subset and, oftentimes, the missing functionality or the erroneous implementation can be replaced with an acceptable substitute.
Following oft-used commands are not available in the free Lite version and were missed (at least initially), but several have had acceptable workarounds developed for them over the years:
Following commands not available in the free Lite version, but they don't matter much to me:
DIFFERENCES has some notable deficiencies that counterbalance its advantages:
It oftentimes shows a false difference or two at the tail end. This limits its usefulness, oftentimes requiring reverting to Microsoft's FC, Digital Mars' DIFF [which is not free], or UnxUtils DIFF oriented utilities.
WinXP/7/10's FC will sometimes display the differences better, especially when DCL Lite's DIFF fails to show 1-2 crucial lines in some differences.
It's simply easier to see and immediately understand differences with ComponentSoftware's CSDiff !!!
My most practical "difference" utility has become CSDiff for text file diff-ing during development (especially when most of the work is not being done in a DCL Lite window), eg, for web development going back and forth from the editor to the browser.
When working on machines that have MS Word, CSDiff usually is more useful than DCL Lite's DIFF for .rtf and .doc file diff-ing, since CSDiff uses the MS Word diff-ing capabilities.
Line editing does not display intuitively during some very common line editing operations, eg, when combining character delete or insert with left-cursor or right-cursor movement. This is quite irritating, but I've learned some ways to partially compensate for it.
Certain types of malformed SEARCH commands can cause infinite loops that sometimes require killing DCL Lite via Task Manager, and in rare cases can cause DCL Lite to crash. The main way I avoid these situations is to simply double-check the command line before pressing the Enter key.
SEARCH (and maybe others) will sometimes not see all files (that you would expect it should) during certain wildcard searches. This seems to happen sometimes for files with all capital letters.
Note:
I haven't yet determined all the failure modes of the
wildcard file selection mechanism. But be aware that any
wildcard file spec that is enclosed in quotes,
or includes spaces or special characters,
or involves anything other than lower case characters,
might be considered a possible suspect for missing some of the
files during the file selection.
This is really a very significant flaw!.
So be diligent, and do sanity checks.
SEARCH doesn't have separator lines (like OpenVMS v6.2 SEARCH did or like UnxUtils GREP does) to separate multiple matches within a file when a multi-line window is used to surround each match inside a file.
Various commands, eg, COPY, RENAME, etc, have limited functionality for the Windows developed files due to destroying of long filenames that contain blanks or inability to perform the desired function. However, using underscores instead of blanks seems to help. Those commands don't copy/rename with the same upper/lower case characters as specified in the command line, unless the target is surrounded by double quotes.
All commands map to lower case (for compatibility w/ Unix), though this can be overridden via SET CLI /UPPERCASE (for greater compatibility w/ VMS). However, mixed cases, as in Windows, is not supported well. It is advisable to always use double quotes on filespecs that involve mixed cases or on filespecs that involve blanks or on filespecs that involve special characters that are not standard on VMS.
Translation of symbols is into lowercase, instead of the VMS standard of uppercase, but you can work around this by using F$EDIT to force to uppercase when necessary.
Commands which use the /BEFORE or /SINCE qualifiers, eg, SEARCH, DIRECTORY, DELETE, TYPE, COPY, RENAME, etc, assume the default date is the /CREATED date instead of the /MODIFIED date. That seems counter intuitive. Usually you'll need to look at modification dates (instead of creation dates) to check or further manipulate files changed today or in the last several days. When that's the case, you'll need to remember to use /SINCE/MOD instead of simply /SINCE.
RECALL will display no more than 20 commands. That's a major irritation!!! But at least there's some command recall capability, and a 20 command recall buffer usually suffices.
Can occasionally be a real CPU hog -- eg, during an entire disk DIRECTORY operation.
Every once in a while, the following error may occur when you use
lots of logicals:
%SYSTEM-F-EXLNMQUOTA, logical name table is full
I've been able to operate well at ~240 logicals.
Somewhere above that I hit the EXLNMQUOTA error.
So there may be a limit of 256 logicals (or thereabouts).
After switching between roughly 200-300 directories, the shell will oftentimes hang. Reason unknown. But, on the other hand, a shell can usually be run for days if not weeks, if there is not a lot of directory switching.
Sometimes a file which had been accessed via an Open DCL Lite command can not be deleted from within Windows Explorer until after DCL Lite is closed. Though sometimes you can clear up the file lock in a less intrusive manner by simply issuing an EXIT then SHOW TIME.
Once in a blue moon, for unknown reasons, DCL Lite just goes "bonkers". For example, being unable to TYPE any text files, but after logout then login, the TYPE command is working again!?!? This is quite rare.
The "%" usually works fine as a single-character wildcard in filespecs. However, both of the following two cases -- which use "%" within a double quoted filespec which is part of an /EXCLUDE clause -- caused a 100% CPU bound infinite loop:
$ search /exact /exc=("volvo%%%diag.html") *.html "IE8","IE9","IE10","IE11"
or:
$ dir/siz/date /exc=("volvo%%diag.html") volvo850diag.html
If the double quotes are removed from the /EXCLUDE clause, the commands work as expected.
No easy way to change the default command type from .COM to .DCL or .A8D, since .COM is a default association under Windows.
Redirection of SYS$OUTPUT might be somewhat different from (what I remember of) the VMS SYS$OUTPUT. Nevertheless, it's still very usable.
OpenVMS file version #s are not truly implemented.
Of course, this is not really Accelr8's fault. It's primarily a result of the Windows file system design not mimic-ing the OpenVMS file numbering scheme.
The Accelr8 method of simulating OpenVMS file version #s using the .~n~ extension to the filetype is helpful to avoid overwriting files at times, so really the Accelr8 file version #s scheme is more of a pro than a con. But it simply is not thorough enough to be used often, and it really seems out of place in a Windows or Unix/Linux environment that, by and large, is not designed to use the extremely useful "multiply versioned files" component of the OpenVMS file system.
The lack of OpenVMS file version #s was a major loss to me initially, since I used that feature so extensively in the OpenVMS world. However, over the years, I've adapted to the simpler reality of the PC world and have developed Windows workarounds by simply copying files then renaming them with descriptive names that identify the versions, dates, and/or types of differences. This is sufficient for my "single user" purposes, doesn't require the overhead of a CMS type system, can be easily pruned by simply deleting any excess archival copies, and doesn't require as much periodic purging to clean up the excess versions in the directory (like OpenVMS did when I was using it).
A free & workable EVE or TPU is not available under DCL Lite.
As an alternative, the free & very useful, high quality EDT-like editor, ED (maintained by Charles Sandmann), can run in a 50-line MS-DOS Prompt or CMD Prompt window. It is appropriate for everyday use, only if the keyboard has a separated keypad.
As of 2017-11-16, the next to last version -- ED v1.6 (circa 2009) -- was still downloadable from the Wayback Machine's http://web.archive.org/web/20151127213413/http://homer.rice.edu/~sandmann/EDstuff/ files index page. Unfortunately, the ED-17*.* packages on that page are not downloadable. Check out this 3 page mishmash of v1.7 and v1.6 pages:
Of course, there are plenty of alternative Windows GUI based text editors that aren't constrained by the "DOS box" type window.
I hope this analysis saves you some time and energy when evaluating if Accelr8 Open DCL Lite v2.21 running on Windows (eg, WinXP, Win7, Win10) is a suitable DCL implementation for your needs.
See Comparison of PC-DCL vs. Open DCL Lite to see why I consider Open DCL Lite to be superior to PC-DCL for most purposes, but how PC-DCL can be used to provide some functionality which Open DCL Lite is missing.
See Mutual Extensibility of Open DCL Lite and PC-DCL for more details on how PC-DCL and Open DCL Lite can coexist and mutually extend one another.