LSE is a multilanguage, advanced text editor that is layered on the VAX Text Processing Utility (VAXTPU). LSE works with VMS languages and other VMS productivity tools to enhance program development. LSE allows you to control your editing environment and use LSE's knowledge of specific languages to develop programs quickly and accurately. LSE provides the following features: o Error Correction and Review This feature allows you to compile, review, and correct compilation errors within a single editing session. LSE provides an interface to the supported VMS language compilers so that you can perform compilations without leaving LSE. The compilers provide LSE with compilation diagnostics in a way that allows you to review compilation errors in one editing window while displaying the related source in another window. o Language-Specific Templates Templates permit fast and efficient source code entry. LSE accesses a collection of formatted language constructs, called templates, that provide keywords, punctuation, and placeholders, for each supported VMS language. LSE allows you to modify existing templates or define your own language or text templates. o Integrated Programming Environment LSE is integrated into the OpenVMS development environment. It is invoked using the DIGITAL Command Language (DCL). LSE works with supported OpenVMS languages, the Source Code Analyzer (SCA), the Code Management System (CMS), the Debugger, and the Performance and Coverage Analyzer (PCA) to provide a highly interactive environment. This environment enables you to create and edit code, to view multiple source modules, to compile programs, and to review and correct compile-time errors in one editing session. LSE can be invoked directly from the debugger to correct source code problems found during debugging sessions. In addition, LSE can be invoked from the Performance and Coverage Analyzer to correct performance problems found during analyzing sessions. o Online HELP Facility LSE provides online HELP for information on unfamiliar language constructs and routines. HELP is also provided for all of LSE's commands and key definitions. o Source Code Analysis LSE's integration with SCA allows you to search for specific information contained in your source files. SCA is a source code cross-reference and static analysis tool that helps programmers familiarize themselves with complex systems. SCA accesses source information generated by supported VMS language compilers. Thus, SCA allows you to move through this information and gain access to related source files as necessary. You can find out how a program symbol was declared, where a particular routine is called, or what module needs to be recompiled. o Source Code Management An interface with CMS simplifies the functions of program development. All CMS commands can be issued within LSE. LSE can be directed to fetch files directly from a CMS library when you issue standard LSE file manipulation commands. In addition, LSE has commands RESERVE, REPLACE and UNRESERVE which perform the corresponding CMS operation on LSE buffers. o Program Design The /DESIGN qualifier allows the compiler to process an input file as a detailed design. Used with LSE and SCA, this new capability provides an integrated software development environment that includes the low-level design phase of the software development life cycle. During the design phase, any supported VAX language can be your Program Design Language (PDL). In the VMS environment, you create detailed designs as follows: - Using a supported VAX language - Embedding design information in comments - Writing algorithms with pseudocode and regular placeholders With LSE, you can use pseudocode placeholders to express design information. Supported VAX languages use the special brackets « and » to delimit pseudocode placeholders. You can express other design information in tagged header comments. In addition, you can convert pseudocode placeholders into comments and store the design information in SCA libraries. With SCA, you can perform cross-referencing and static analysis on the design information. In addition, SCA provides a report tool that allows you to process and analyze designs to produce a variety of design reports. Design reports can show the current state of design work and help you understand existing code. You can generate help libraries and routine templates from these design reports. o LSE Customization LSE allows you to extend your editing environment to handle highly specialized editing needs. LSE provides an interface to VAXTPU. VAXTPU is part of the VMS operating system. VAXTPU features include a compiler and an interpreter, and procedures for screen management and text manipulation. The VAXTPU language is block-structured and provides looping, conditional, case, and assignment statements, and many built-in procedures to allow you to perform more powerful editing tasks. o EVE/EDT Keypads LSE provides a SET MODE KEYPAD command that sets the key definitions to be similiar to EVE or EDT. o System Services and Run-Time Library Templates LSE provides packages for VMS Systems Services and for the LIB$, SMG$, and STR$ Run-Time Library routines. In addition, LSE allows you to define templates for packages of subroutine libraries.