| J. Grosch and H. Emmelmann. A toolbox for compiler construction. In Lecture Notes in Computer Science No. 477, pages 22-24. Springer-verlag, October 1990. |
....for a transformation, perhaps in text. 2. Define the data model of your application, i.e. define which parts of the knowledge you want to present should be objects and which should be relations. This can be done either in Java, with the syntax of the tool AST from the GMD toolbox Cocktail [GE90] [Gro89] or within the context of the compiler model CoSy in CoSy fSDL [Buh95] 3. Design of the data manipulation, i.e. formulate graph rewrite systems that compute and transform the graphs that were defined in the data model. Build graphs with edge addition rewrite systems (EARS) and ....
....mode, in AST standalone mode, and in CoSy fSDL mode. Java mode OPTIMIX can read Java classes to filter out type, graph, and set definitions. In this case the output language is Java. AST standalone mode OPTIMIX is able to read existing data model specifications of AST (with small restrictions) [GE90] [Gro89] This means that existing AST data specifications of compilers can be reused and extended for use with OPTIMIX. AST data definitions are module based and AST modules may occur within OPTIMIX specification files. Thus AST data definition language can also be used as standalone data ....
Josef Grosch and Helmut Emmelmann. A tool box for compiler construction. In LNCS 477: Compiler Compilers; Third International Workshop, CC'90; Schwerin, FRG; Proceedings. Springer, October 1990.
....for a transformation, perhaps in text. 2. Define the data model of your application, i.e. define which parts of the knowledge you want to present should be objects and which should be relations. This can be done either in Java, with the syntax of the tool AST from the GMD toolbox Cocktail [GE90] [Gro89] or within the context of the compiler model CoSy in CoSy fSDL [Buh95] 3. Design of the data manipulation, i.e. formulate graph rewrite systems that compute and transform the graphs that were defined in the data model. Build graphs with edge addition rewrite systems (EARS) and ....
....in AST standalone mode, and in CoSy fSDL mode. Java mode OPTIMIX can read Java classes to filter out type, graph, and set definitions. In this case the output language is Java. AST standalone mode OPTIMIX is able with small restrictions to read existing data model specifications of AST [GE90] [Gro89] Existing AST data specifications of compilers can be reused and extended for use with OPTIMIX. AST data definitions are module based and AST modules may occur within OPTIMIXspecification files. Thus AST data definition language can also be used as standalone data definition language of ....
Josef Grosch and Helmut Emmelmann. A tool box for compiler construction. In LNCS 477: Compiler Compilers; Third International Workshop, CC'90; Schwerin, FRG; Proceedings. Springer, October 1990.
....of the Opus compiler, the Opus Runtime System, and the OpusJava class library. We implemented a prototype Opus compiler that accepts a subset of the Coordination Language Opus defined in Chapter 2 and 3 by extending the HPF frontend of VFC [21] and using the Cocktail compiler construction toolbox [95]. The Opus Runtime System is mainly implemented in Fortran 90 and based on SUN MPI [177] mpich [94] and pthreads [114] The data exchange mechanism between distributed SDAs is based upon the adlib [43] library. Prototypes exist for clusters of Solaris Workstations, the Quadrics CS2, and the Cray ....
J. Grosch and H. Engelmann. A Tool Box for Compiler Construction. In LNCS, No. 447, pages 106--116. Springer Verlag, October 1990.
....node construction, pattern matching and type checking code available in the IR module. The following subsections describe important features of the TRAP compiler description language. Many concepts and details of TRAP are borrowed from other compiler construction tools, with the Cocktail Toolbox[5], Depot4[4] Gentle[6] and CoSy[8] being the main sources of inspiration. Description format. Due to the tight integration of TRAP with Python, several aspects of the description language have been modelled after Python. Most noteably, TRAP is a line oriented language in which indentation is ....
....TRAP generator creates Python code to create and maintain the desired IR data structures class de nitions with constructors, prefabricated methods, and run time type information. Taking into account experience with other compiler tools, we selected for TRAP an IR model similar to that of ast [5], based on the concept of object oriented attribute grammars. It is described in more detail below, in the course explaining the corresponding TRAP description language constructs: Nodes. A node sort is de ned by its name, an optional list of mixin (see below) names, and a list 8 of eld ....
[Article contains additional citation context not shown here]
Grosch, J.: A Tool Box for Compiler Construction. LNCS 477, pp.106-116, Springer 1990
....context free grammars [47] natural semantics [15] and attribute grammars [54,14,44] We rely on Prolog s concepts and its expressiveness to supply features like parsing, typing, modularity, adaptiveness, genericity. Laptob is a lightweight compared to compiler compilers like Eli [19] Cocktail [20], FNC 2 [27] or Lisa [62] Such compiler compilers are complex pieces of software which usually favour a certain class of attribute grammars and their efficient implementation. We should also compare Laptob to other environments for language design, program transformation, or language processing, ....
J. Grosch and H. Emmelmann. A Tool Box for Compiler Construction. In Proc. CC'90, 1990.
....systems. Domain speci c and little languages [15, 37] Many of the tools in Table 3 are as useful for DSLs as they are for programming languages. Software maintenance and renovation tools [16] Some of these are included at the end of Table 3. Compiler toolkits such as CoSy [1] Cocktail [18], OCS [22] SUIF [42] and PIM [6, 17] 3 Existing Language Development Systems Table 4 summarizes the tool generation capabilities of the representative language development systems listed in Table 2. All of them can generate lexical scanners, parsers, and prettyprinters, many of them can ....
J. Grosch and H. Emmelmann. A tool box for compiler construction. In D. Hammer, editor, Compiler Compilers (CC '90), volume 477 of Lecture Notes in Computer Science. Springer-Verlag, 1990.
.... Domain specific and little languages [15, 37] Many of the tools in Table 3 are as useful for DSLs as they are for programming languages. Software maintenance and renovation tools [16] Some of these are included at the end of Table 3. Compiler toolkits such as CoSy [1] Cocktail [18], OCS [22] SUIF [42] and PIM [6, 17] 5 System Generated tools Semantic engine Synthesizer Generator scanner parser (LALR) prettyprinter, syntax directed editor, incremental typechecker, incremental translator, incremental attribute evaluator PSG scanner parser, ....
J. Grosch and H. Emmelmann. A tool box for compiler construction. In D. Hammer, editor, Compiler Compilers (CC '90), volume 477 of Lecture Notes in Computer Science. Springer-Verlag, 1990.
....presents the formalism and describes one of its applications , namely, the specification of a translation from SDL into S R. The complete set of translation rules for our SDL to S R compiler is given in [5] and explained in detail in [13] The compiler has been implemented using Karlsruhe Coctail [7] as a technological toolkit and the translation rules [5] as the design document. Whereas the development of a compiler front end is a more or less straightforward task supported by well known tools (such as LEX YACC) this is not the case at all in developing a compiler back end. Here the ....
....rules [5] as the design document. Whereas the development of a compiler front end is a more or less straightforward task supported by well known tools (such as LEX YACC) this is not the case at all in developing a compiler back end. Here the state of art tools (such as Karlsruhe Cocktail [7]) only facilitate the implementation phase, but are of no help in designing a translation mapping that constitutes the heart of a compiler development. The novelty of the method described in the paper, in comparison with some of the well known specification formalisms [6, 2, 9] lies in its ....
[Article contains additional citation context not shown here]
J. Grosch, H. Emmelmann, "A Toolbox for Compiler Construction", in D. Hammer (ed.), Compiler Compilers'90 Third Int. Workshop, Springer Verlag LNCS 477 , 1990, 106-116.
....Fortran95 HPF programs to Fortran90 MPI message passing SPMD programs. The system is based on a Fortran 90 front end initially developed at GMD Berlin and extended at the University of Vienna. Besides the main implementation languages C and C , the Cocktail compiler construction tool box[42] has been used extensively. VFC is currently available for the Solaris operating system. Codes parallelized with VFC can be executed on the Meiko CS 2, the NEC Cenju 3 and Cenju 4, the Fujitsu AP 3000, and on clusters of workstations. VFC is the first HPF compilation system that offers besides ....
....load.y, sp3t load.l These files were used in an early implementation of our symbolic manipulation package and are now obsolete. ffl Ast2Expr.c, Ast2Expr.h (generated from ast2expr.puma) These files contain the code for conversion of expressions available in VFC s internal representation (Ast [42]) into the EXPR representation used by our symbolic manipulation package. ffl Sp3tComm.c, Sp3tComm.h (generated from ast2expr.puma) These files contain various interfaces to the algebraic sum algorithm. ffl Tools.c, Tools.h (generated from tools.puma) These files contain some help functions ....
J. Grosch and H. Engelmann. A Tool Box for Compiler Construction. In LNCS, No. 447, pages 106--116. Springer Verlag, October 1990.
....aid in the design and implementation of programming, specification and modeling languages. The tools Lex [77] and Yacc [59] are the most well known ones that come to mind here. But there are many others including academic and commercial products: LDL [49] ASF SDF Meta Environment [66] Cocktail [46, 45], Software Refinery [94] TXL [32] TAMPR [14] Eli [44] Gandalf [47] Elegant [88] ToolMaker [108] RainCode [91] COSMOS [38] and so on. A crucial aspect of any language is its grammar. A grammar is the formal specification of the syntactic structure of a language. Such specifications are ....
J. Grosch and H. Emmelmann. A toolbox for compiler construction. In D. Hammer, editor, Proceedings of the Third International Workshop on Compiler Compilers, volume 477 of Lecture Notes in Computer Science, pages 106--116. Springer-Verlag, 1990.
....languages, the targeting of unconventional architectures or, the experimentation with new implementation techniques. The lessons learned during this process are summarised and the specialised tool approach is evaluated. 1 Introduction A great number of tools [19] and many complete tool boxes [13, 32] are available today to aid the language implementor. During the process of implementing a system supporting the Haskell language [17] we found that considerable advances in productivity and reliability can be obtained by building specialised little tools catering for specific language related ....
....Unix operating system were used. In addition a number of custom tools were designed and implemented. These tools were needed because special features of the Haskell language such as the layout syntax rule and type classes made the use of complete compiler construction tool boxes (such as [13, 32]) infeasible. The new tools formed an integral part of the project development. We believe that building highly specialised tools can,under certain circumstances, be a worthwhile approach. There are many cases where the implementation and of a custom tool can be preferable to the use of an ....
Grosch J, Emmelmann H (1991) A tool box for compiler construction. In Hammer D, editor, Compiler Compilers : Third International Workshop, CC '90, pp 106--116, Schwerin, Germany. Springer-Verlag. Lecture Notes in Computer Science 477.
....counters [9] Those tools are valuable but our assumption is that they are geared at computer architecture designer rather than application engineers. 6 Current Prototype Status and future work The SOPHIE instrumenter was developed with the Cocktail compiler generation development tool set [7]. This tool extensively uses high level description to generate code analysis, code transformation and code generation. Compared to a normal execution, the instrumented version runs 500 times slower. This problem has limited impact because HPRT applications have a shorter processing time than ....
H. Emmeimann J. Grosch. A tool box for compiler construction. Technical Report 20, GMD, 1990. http://www.first.gmd.de/toolkit/cocktail.
....involved domain engineers. For the definition and implementation of DSLs, powerful tool support is needed. Both the compiler construction community and the language specification community are now advocating to use their tools for DSLs. Advantages of compiler construction tools (e.g. Cocktail [GE90] Eli [GHL 92] or PCCTS [PDC92] are efficient implementations and scalability to large languages, while advantages of language specification tools (e.g. Centaur [BCD 87] ASF SDF [Kli93] or Gem Mex [AKP97a] are very abstract specifications, that are easy to maintain and reuse. In an ....
J. Grosch and H. Emmelmann. A tool box for compiler construction. Technical Report 20, GMD, Universita Karlsruhe, January 1990.
.... translation by testing it in a systematic and efficient manner a compiler application More precisely can it be used at all in some manner that may render it superior to an informal programming approach using state of the art compiler construction toolkits such as Lex Yacc, Karlsruhe Coctail [13] or Kimwitu [11] Our answer to this question is affirmative and to some extent its feasibility has been demonstrated in the formalism and the application explained in this paper. The methodology we use employs a formalism for describing the mechanics of translation as a function of an externally ....
J. Grosch, H. Emmelmann, "A Toolbox for Compiler Construction", in D. Hammer (ed.), Compiler Compilers '90 Third Int. Workshop, Springer Verlag LNCS 477 , 1990, 106-116.
....gdb is not seamless; this is, however, still preferable to having to implement a debugger for every target architecture. 1. 3 The GMD Compiler Construction Toolkit The GMD Toolkit is a very comprehensive package of specification tools developed at Karlsruhe to support the construction of compilers[5]. They are available via anonymous ftp 3 . Documentation is acceptable although it is targeted towards those already familiar with compiler construction. 1 ftp.ecs.soton.ac.uk ( pub occam spoc1.1) 2 unix.hensa.ac.uk ( pub parallel software compilers occam spoc1.1) 3 ftp.gmd.de in the ....
Grosch, J., and Emmelmann, H. A Tool Box for Compiler Construction, vol. 477. Springer, Oct. 1990, pp. 106--116.
....they create. Binding Because OOSS programs are tied to our OOS solely by the implementation of the operator commands, re implementation of the operators to generate instances of other object stores (including the Software Refinery object base, and for the Cocktail compiler compiler system [19]) has proved to be straightforward. Likewise, generation of OOSS programs from OOS file systems (and from Cocktail data models and structures) is straightforward. Asynchronous 15 As the next stage in development, we propose to preprocess Refine programs in order to intercept object base ....
Grosch, J. and Emmelman, H., "A Tool Box for Compiler Construction", GMD Report No. 20, Universitat Karlsruhe (1990).
....compiler generates an intermediate representation for a source SDL program. The intermediate representation is suitable as input for the back end, the part of compiler that deals with target code generation. For the implementation of the front end, a new generation compiler construction technology[10, 11] is used and a very fast and efficient tool is constructed. The improvement of the tool and other CASE tools are still in progress as the part of SDL 92 platform project. The outline of the thesis is as follows: The second chapter gives the necessary background for compiler construction. The ....
....a compiler. In this chapter an overview of the toolbox is given and the common features of the tools are 1 COCKTAIL toolbox is developed by Dr. Josef Grosch from the German National Research Center for Computer Science at Karlsruhe University. introduced. The interested reader is referred to [10, 11] as information about the toolbox, and the user manuals of the tools that are cited in the following text as detailed references about the tools. The COCKTAIL toolbox consists of the following tools: REX [12] Lexical analyzer (scanner) generator LALR [13, 14] LALR(1) parser generator ELL [13] ....
Grosch, J. and H. Emmelmann. "A Tool Box for Compiler Construction", Compiler Generation Report No. 20, GMD Forschungsstelle an der Universit at Karlsruhe, 1990.
....and C measuring the times required for the different critical accesses and dispatches discussed and integrated in the new Sather 0.6 coder so far 3 . These times are outlined in Table 4. Note that the Karlsruhe Sather implementation is based on the compiler construction toolkit Cocktail [7, 8] with a backend generating Sparc assembler code. The currently available backend does not yet include optimisations. Benchmark Unoptimimised Optimimised Sa 0.5 C Sa 0.6 Sa K Sa 0.5 C Sa 0.6 Dynamic dispatch 10.97 1.35 1.74 1.57 9.05 0.36 0.55 Double dispatch 12.46 1.96 2.04 1.74 9.23 0.74 0.71 ....
J. Grosch and H. Emmelmann: "A Tool Box for Compiler Construction", LNCS 477, Springer Verlag, pp. 106--116, 1990
....run time system. 1 Adaptor: A Compilation System for Data Parallel Fortran Programs 5. The new internal abstract syntax tree is unparsed back to source text. Except the graphical interface, the whole source to source transformation of Adaptor is generated with a toolbox for compiler construction [11]. These tools have a great flexibility and can generate very efficient code. For the intermediate language, abstract syntax trees will be used where the program module that defines the structure of the abstract syntax trees and provides general tree manipulating procedures is also generated by a ....
J. Grosch and H. Emmelmann. A Tool Box for Compiler Construction. Lecture Notes of Computer Science, 477:106--116, October 1990.
....languages, the targeting of unconventional architectures or, the experimentation with new implementation techniques. The lessons learned during this process are summarised and the specialised tool approach is evaluated. 1 Introduction A great number of tools [19] and many complete tool boxes [13, 32] are available today to aid the language implementor. During the process of implementing a system supporting the Haskell language [17] we found that considerable advances in productivity and reliability can be obtained by building specialised little tools catering for specific language related ....
....Unix operating system were used. In addition a number of custom tools were designed and implemented. These tools were needed because special features of the Haskell language such as the layout syntax rule and type classes made the use of complete compiler construction tool boxes (such as [13, 32]) infeasible. The new tools formed an integral part of the project development. We believe that building highly specialised tools can, under certain circumstances, be a worthwhile approach. There are many cases where the implementation and of a custom Software: Concepts Tools 14:37 48, ....
Grosch J, Emmelmann H (1991) A tool box for compiler construction. In Hammer D, editor, Compiler Compilers : Third International Workshop, CC '90, pp 106--116, Schwerin, Germany. Springer-Verlag. Lecture Notes in Computer Science 477.
....all preconditions for a transformation, perhaps in text. 2. Define the data model of your application, i.e. define which parts of the knowledge you want to present should be objects and which should be relations. This can be done either with the syntax of the tool AST from the GMD toolbox Cocktail [GE90] [Gro89] or within the context of the compiler model CoSy in CoSy fSDL [Buh95] 3. Design of the data manipulation, i.e. formulate graph rewrite systems that compute and transform the graphs that were defined in the data model. Build graphs with edge addition rewrite systems (EARS) and ....
....CoSy produces a flatform file which contains all fSDL specifications in a flat form. OPTIMIX must read this file to know about the data model (option ff) CHAPTER 1. GENERAL TOPICS 7 AST standalone mode OPTIMIX is able to read existing data model specifications of AST (with small restrictions) [GE90] [Gro89] This means that existing AST data specifications of compilers can be reused and extended for use with OPTIMIX. AST data definitions are module based and AST modules may occur within OPTIMIX specification files. Thus AST data definition language can also be used as standalone data ....
Josef Grosch and Helmut Emmelmann. A tool box for compiler construction. In LNCS 477: Compiler Compilers; Third International Workshop, CC'90; Schwerin, FRG; Proceedings. Springer Verlag, October 1990.
....for Object Z is also presented. The Wizard project [36] produced a type checker for Object Z specifications written in L A T E X. The Wizard tool uses the syntax and static semantic rules of Object Z as described by Duke and Rose. The tool was written using the GMD compiler generation toolbox [23], giving it a modular design that makes it easy to reuse components such as the parser and abstract syntax tree in other tools. 3 Research Plan To make progress towards the aim of automated test oracle generation, this project has two objectives. 1. To develop a method for the translation of ....
....for the translation process. Given that I have already acquired skill in ClassBench and that access to the source code and developers of ClassBench is available, I have decided to use it for the development of oracles. The Wizard [36] and CGG [41, 42] tools (both based on the GMD Compiler Toolbox [23]) provide suitable frameworks for the development of the prototype test oracle generator and for any other processing of formal specifications. It is envisaged that either one or both of these will be used. To achieve the above goals, I propose to undertake the following tasks. 1. A small case ....
J. Grosch and H. Emmelmann. A toolbox for compiler construction. Technical Report 20, GMD, University of Karlsruhe, Germany, January 1990.
....but there are now versions available (some free) for virtually every development platform. 3.2 Compiler Writing Systems 31 More recently, systems have been developed that provide tools to generate an entire compiler. For example, two such systems are ELI[GHL 92,Kas93,Wai93] and COCKTAIL[ESL89,GE90]. Both are based on attribute grammars, and use a collection of tools to produce the different phases of a compiler. To illustrate the structure of a typical compiler writing system, we will consider the COCKTAIL system in more detail. The COCKTAIL system consists of seven separate tools for ....
J. Grosch and H. Emmelmann. A tool box for compiler construction. In Compiler Construction '90, Schwerin, FRG, Lecture Notes in Computer Science, pages 106--116. Springer-Verlag, October 1990.
....a completely new implementation when adding new capabilities such as generation of parallel code, and generation of Fortran 90 code. This required a more general type analysis than the previous C oriented mechanism. The new implementation use the Cocktail toolkit, a set of compiler writing tools [9] such as tools for parsing, pattern matching, tree transformation, attribute evaluation, etc. In the new implementation, the compiler and code generator run in the same address space. This makes it possible for the code generator to directly access the internal representation of both the ....
Josef Grosch and Helmut Emmelmann. A tool box for compiler construction. In Dieter Hammer, editor, Compiler Compilers, volume 477 of Lecture Notes in Computer Science, pages 106--116. Springer-Verlag, 1990.
No context found.
J. Grosch and H. Emmelmann. A toolbox for compiler construction. In Lecture Notes in Computer Science No. 477, pages 22-24. Springer-verlag, October 1990.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC