102 research outputs found

    The Use of Translator Implementation Methods for Writing Nonprocedural Interfaces to Application Software Systems

    Get PDF
    One of the results of advances in computer hardware technology is a wider use of computers in almost all areas of society. There is a need to make it possible for many people to use application software systems that are produced for different areas. For people without data processing backgrounds it would seem wise to use a nonprocedural interface to these systems. The implementation of a nonprocedural interface as a part of an application software system can be facilitated using aspects of the theory and practice of the translator construction for programming languages. The purpose of this paper is to introduce programmers who lack theoretical background and/or practical experience in the area of translator design and implementation to the relevant aspects of its theory and practice

    Dataflow computers: a tutorial and survey

    Get PDF
    Journal ArticleThe demand for very high performance computer has encouraged some researchers in the computer science field to consider alternatives to the conventional notions of program and computer organization. The dataflow computer is one attempt to form a new collection of consistent systems ideas to improve both computer performance and to alleviate the software design problems induced by the construction of highly concurrent programs

    Grasp--a language to facilitate the synthesis of parallel programs

    Full text link
    In the context of this thesis, the name Grasp subsumes three distinct but highly interrelated projects. First of all, Grasp is a programming language that allows the user to define properties of graph-theoretic objects by using high-level nonprocedural descriptions called specifications. Second, Grasp is a translator that converts specifications to standard sequential C functions. Finally, Grasp is a model of computation that has been left largely uninvestigated despite possessing several advantageous properties. Each of these aspects of Grasp is described in a contextually clean and detailed manner, but in the end the theoretical aspects of Grasp are espoused over the formal and practical aspects

    Using the General Intensional Programming System (GIPSY) for Evaluation of Higher-Order Intensional Logic (HOIL) Expressions

    Full text link
    The General Intensional Programming System (GIPSY) has been built around the Lucid family of intensional programming languages that rely on the higher-order intensional logic (HOIL) to provide context-oriented multidimensional reasoning of intensional expressions. HOIL combines functional programming with various intensional logics to allow explicit context expressions to be evaluated as first-class values that can be passed as parameters to functions and return as results with an appropriate set of operators defined on contexts. GIPSY's frameworks are implemented in Java as a collection of replaceable components for the compilers of various Lucid dialects and the demand-driven eductive evaluation engine that can run distributively. GIPSY provides support for hybrid programming models that couple intensional and imperative languages for a variety of needs. Explicit context expressions limit the scope of evaluation of math expressions (effectively a Lucid program is a mathematics or physics expression constrained by the context) in tensor physics, regular math in multiple dimensions, etc., and for cyberforensic reasoning as one of the use-cases of interest. Thus, GIPSY is a support testbed for HOIL-based languages some of which enable such reasoning, as in formal cyberforensic case analysis with event reconstruction. In this paper we discuss the GIPSY architecture, its evaluation engine and example use-cases.Comment: 14 pages; 8 figure

    Comparative Study of the Inference Mechanisms in PROLOG and SPIDER

    Get PDF
    Control Network Programming (CNP) is a graphical nonprocedural programming style whose built-in inference engine (interpreter) is based on search in a recursive network. This paper is the third in a series of reports that share a common objective – comparison between the CNP language SPIDER and the logic programming language PROLOG. The focus here is on the comparative investigation of their interpreters, presented in a generic formal frame – reduction of goals. As a result of juxtaposing their pseudo-codes the advantages of SPIDER are outlined
    • …
    corecore