7 research outputs found

    AN ENVIRONMENT FOR ENGINEERING EXTENDED AFFIX GRAMMAR ENVIRONMENTS

    Get PDF
    Existing formalisms for the specification of programming environments are complex and strongly biased by the problems of environment generation. It has been investigated whether a simple two-level grammar, describing a programming language, can be used without further modification for the generation of an environment for that language. We believe that there is enough information in most language definitions - albeit implicitly - to generate most of the tools used in syntax-directed editors. This paper proposes some simple and elegant improvements in the use of place- holders and templates, and in the unparsing mechanism. Although the improvements are implemented in a completely newly designed prototype they can also be applied to existing syntax-directed editors to improve their workability

    A pretty-printer for every occasion

    Get PDF
    Tool builders dealing with many different languages, and language designers require sophisticated pretty-print techniques to minimize the time needed for constructing and adapting pretty-printers. We combined new and existing pretty-print techniques in a generic pretty-printer that satisfies modern pretty-print requirements. Its features include language independence, customization, and incremental pretty-printer generation. Furthermore, we emphasize that the recent acceptance of XML as international standard for the representation of structured data demands flexible pretty-print techniques, and we demonstrate that our pretty-printer provides such technology

    An integrated programming environment for pseudo-code development, IPE-PC

    Get PDF
    An Integrated Programming Environment, IPE-PC, that supports pseudo-code development has been designed and implemented. This environment is based on a Pascal-like language which is designed according to the requirements of a language-based environment. The nucleus of IPE-PC is a language-based editor which represents programs as graphs internally. The same representation is used in every mode of the environment (i.e., editing, compilation, execution, debugging and translation). The system provides facilities to take advantage of both top-down and bottom-up programming. Stepwise refinement has been supported by providing comment structures that can be transformed into procedures. Bottom-up programming is supported because it is possible to create and save program segments which can be inserted to the programs at the appropriate points --Abstract, page ii

    The development of a program analysis environment for Ada: Reverse engineering tools for Ada

    Get PDF
    The Graphical Representations of Algorithms, Structures, and Processes for Ada (GRASP/Ada) has successfully created and prototyped a new algorithm level graphical representation for Ada software, the Control Structure Diagram (CSD). The primary impetus for creation of the CSD was to improve the comprehension efficiency of Ada software and thus improve reliability and reduce costs. The emphasis was on the automatic generation of the CSD from Ada source code to support reverse engineering and maintenance. The CSD has the potential to replace traditional prettyprinted Ada source code. In Phase 1 of the GRASP/Ada project, the CSD graphical constructs were created and applied manually to several small Ada programs. A prototype (Version 1) was designed and implemented using FLEX and BISON running under the Virtual Memory System (VMS) on a VAX 11-780. In Phase 2, the prototype was improved and ported to the Sun 4 platform under UNIX. A user interface was designed and partially implemented. The prototype was applied successfully to numerous Ada programs ranging in size from several hundred to several thousand lines of source code. In Phase 3 of the project, the prototype was prepared for limited distribution (GRASP/Ada Version 3.0) to facilitate evaluation. The user interface was extensively reworked. The current prototype provides the capability for the user to generate CSD from Ada source code in a reverse engineering mode with a level of flexibility suitable for practical application

    A function-key driven syntax-directed editor for software systems design

    Get PDF
    A project report submitted to the Faculty of Engineering, University of the Witwatersrand, Johannesburg in partial fulfillment of the requirements for the degree of Master of Science in Engineering.Program Description Language (PDL) is a high-level design language used for both hardware and software systems design. Due to the clerical effort involved in creating such a structured program, however, the PDL design is usually bypassed, and coding performed directly. The syntax-directed PDL generator package presented here, written in Pascal for the IBM-PC, is aimed at providing a tool for producing syntactically correct PDL programs with the minimum of effort. Function keys are used extensively for specifying system inputs, and PDL keywords are inserted via construct templates. Syntactical correctness is always enforced while indentation or prettypriuting is automatic. This userfriendly PDL editor thus encourages a top-down iterative design approach while automatically performing syntax and partial semantic error detection. It is believed that this much needed tool will not only promote high-level design principles, but also serve as the basis for automatic code generation for commonly used programming languages
    corecore