A SUIF Interface Module for Eli. W. M. Waite. University of Colorado

Size: px
Start display at page:

Download "A SUIF Interface Module for Eli. W. M. Waite. University of Colorado"

Transcription

1 A SUIF Interace Module or Eli W. M. Waite Department o Electrical and Computer Enineerin University o Colorado William.Waite@Colorado.edu 1 What is Eli? Eli [2] is a domain-specic prorammin environment or lanuae and translator development. It embodies the standard decomposition o the translation process ound in any text on compiler construction [1,6]. An Eli user is invited to describe the characteristics o their problem in terms o this decomposition. The environment then creates C code to solve the problem described. That enerated code, which is completely independent o Eli, can be compiled by either a C or a C++ compiler and linked with other modules i desired. Most o the sub-problem descriptions are static - they describe relationships that hold amon items o inormation in various parts o a proram. For example, in most lanuaes the type o value resultin rom a dyadic operator is related to the operator indication (what the author o the proram wrote) and the types o values supplied as operands. This relationship is a static property o prorams in the iven lanuae, and can be described without statin an alorithm or operator identication [6]. Sinicant leverae can oten be ained by writin the description o a problem in a lanuae specic to that class o problem. Describin a parsin problem in terms o a context-ree rammar is a technique that has been used or many years, and one has only to look at the early literature on expression analysis [5] to et an idea o the simplication in that case. Context-ree rammars are used to describe the phrase structure o a lanuae to Eli, and reular expressions are used to describe the lexical structure o the non-literal terminal symbols appearin in that rammar. Problem-oriented lanuaes are also used to describe computations over trees, storae o entities and their properties, and production o output text. At rst lance, the use o a variety o lanuaes simply makes Eli harder to learn. The payo, however, is sinicant. For example, most o the interestin tasks o any lanuae processor involve computations over trees. A description o such a computation in a prorammin lanuae embodies relationships amon values at various nodes in the tree, a traversal alorithm, and the necessary intermediate storae. I an attribute rammar is used or the description, however, only the relationships amon values need be described - the traversal alorithm and intermediate storae requirements can be deduced rom those relationships [7]. Experience shows that hand-coded tree computations have a larer investment in the traversal alorithm and intermediate storae manaement than in the computation o the relationships. This investment is not only in the code itsel, but in the desin as well. Such alorithms are hard to et riht in the rst place, and even harder to maintain, but they are really only scaoldin or determinin the relevant values. The leverae ained rom bein able to simply inore that scaoldin is obvious. 1

2 Avoidin the need to speciy tree traversal and intermediate storae manaement not only reduces the conitive load on both implementers and readers, but supports decomposition o the specication into modules [3]. Many o the values o interest when analyzin a proram depend only slihtly on each other. For example, a compiler uses scope rules to relate uses o identiers to their denitions. That inormation allows it to determine the types o values represented by the leaves o an expression. It can then use the denitions o operators to nd what type o value is represented by every expression. The computation o expression types is quite distinct rom the computation implementin the scope rules; the ormer depends upon the result o the latter, but the detailed relationships involved are independent o one another. Not only can sets o relationships be made independent o one another, they can also be made independent o the detailed structure o the tree. Thus common computations, like the ones implementin scope rules, can be placed in libraries and reused or a variety o applications. In addition, specications or distinct subtasks can be used as buildin blocks to create a variety o processors. Eli has been in the eld or six years, and has been used to implement both special purpose lanuaes and special processors or mainstream lanuaes. The library currently contains specication modules or many o the common tree computations, and or several subtasks o processors or C and FORTRAN. For example, there are modules describin the structurin tasks or C, FORTRAN 77, FORTRAN 90 and HPF, and modules describin the symbol properties o C and FORTRAN 77. These modules have been used to implement processors that extract metrics rom C prorams, produce HTML representations o C prorams in which symbol uses reer to denitions, and convert VMS FORTRAN to RS6000 FORTRAN. Modules describin SUIF and DEC Alpha assembly lanuae are also available. The ormer has been used to produce SUIF representations o FORTRAN 77 prorams, and the latter in an experimental processor that creates symbolic debuers rom lanuae specications. 2 What does the SUIF interace module look like? The eneral orm o the SUIF interace module is a reerence manual or SUIF itsel. Eli specications are enerally written usin the \literate prorammin" style [4], which mixes descriptive text with the ormal notation to provide a document that can easily be read by humans. Our primary purpose in usin this style is to match the specication to other descriptions o what's bein specied, so that its correctness and completeness is easily determined. Three aspects o SUIF must be described by the Eli interace specication: Process control is the aspect involvin initialization o the SUIF library, creation o les in a le set, and output o each SUIF-coded procedure. Data representation provides primitives and ormation rules or describin data structure, and action representation provides primitives and ormation rules or describin control structure. The interace specication simply exports names that can be used in speciyin relationships involvin these aspects. Sinle identiers must be used to denote the types o values that are related in the tree. Because SUIF is implemented in C++, many SUIF entities are represented by pointer types denoted with leadin asterisks. The SUIF interace module uses C typede statements to provide sinle identiers or these types. These typede statements appear in sections o the specication describin the SUIF types and their purpose, and can thereore easily be checked aainst other descriptions o SUIF. Relationships amon values that are more complex than simple identity are expressed in Eli by unction application. SUIF denotes some o these relationships as method calls, which the interace module must 2

3 \packae" as unction application. In some cases, this is easily done via a #dene directive appearin in the section o the specication describin the correspondin ormation rule. In others, however, an interace procedure must be dened. Fiure 1 shows a rament o the denition as an approximation o the way it appears when printed. There are three macros shown in Fiure 1, and these are raments o the actual specication. The third o these macros illustrates use o a typede to provide a sinle identier or the proc symtab * type, while the rst and second packae the method call that creates a new procedure scope. Two specications are needed or this purpose because the packain involves both a C le and a header le. The SUIF interace module or Eli simply makes SUIF operations and data types available or use in other modules. The module is invoked by mentionin its name as one o the specications needed or a particular processor. It is up to some other module to use the operations dened by the SUIF interace module to actually produce SUIF. 3 How is the interace module used? The SUIF interace module is used by mentionin the data types and operations that it makes available in describin relations amon values at nodes in a tree describin the proram. For example, Fiure 2 shows how the interace procedures o Fiure 1 are used to create procedure scopes or FORTRAN proram units. In each case the created scope is attached to the node o the abstract syntax tree as an attribute called suiscope. This attribute can be reerred to anywhere in the body o the proram unit by INCLUDING xproramunit.suiscope, and Eli will uarantee that the value has been computed beore it is used. Thus there is no need or the user to think about how (or whether) to distribute the value to AST nodes, or when the use should be computed. Eli enerates a C++ proram rom the collection o specications it was iven. The enerated proram uses types and invokes methods that are exported by the SUIF library. Thus the list o specications made available to Eli must include the name o the SUIF library on the machine bein used. 4 Benets Eli specications are easy to create and maintain, and there is a rowin set o such specications or common lanuaes. The SUIF interace module thus simplies use o SUIF with a variety o input lanuaes, and also makes additional annotations based on special source proram analyses relatively cheap to create. Extensions o existin source can be dened readily by chanin existin specication modules, and these extensions expressed in SUIF by describin the relationships they enender amon components o a SUIF proram. Because the structure o the SUIF interace module is identical to that o the SUIF denition, it is easy to veriy that the module is correct. Also, as the SUIF denition itsel chanes, those chanes can be easily reected in the interace module. The result is that the Eli specication is much easier to maintain than an implementation written in C++. Use o an Eli specication involves no systematic loss in perormance, and in act one usually sees a ain in perormance vis{vis a hand-coded implementation durin maintenance. The reason is that chanes made in the set o relationships amon values at tree nodes oten results in a chane in the optimum traversal stratey and/or the manaement o intermediate results. With an Eli specication, the system will automatically adjust these, but the author o a hand-coded implementation usually has too 3

4 A procedure scope is created by invokin the NewProcedureScope operation, ivin the parent scope and a name describin the created scope as aruments. Normally the name iven is the name o the procedure with which the scope is associated. It is important to note that SUIF provides no connection between a procedure scope and a procedure. The user may interpret the name as a connection, but any use o that connection must be provided by user code and is not supported by the SUIF data structure. Procedure scope[8] proc_symtab * NewProcedureScope(lobal_symtab *s, char *n) { proc_symtab *t = new proc_symtab(n); s->add_child(t); return t; } proc_symtab * NewProcedureScope(ile_symtab *s, char *n) { proc_symtab *t = new proc_symtab(n); s->add_child(t); return t; } This macro is invoked in denition 53. Interace procedure prototypes[9] extern proc_symtab *NewProcedureScope(lobal_symtab *s, char *n); extern proc_symtab *NewProcedureScope(ile_symtab *s, char *n); This macro is dened in denitions 9 and 12. This macro is invoked in denition 54. The type proc symtab * must be dened as an identier to make it acceptable in an Eli specication: LIDO representations o C++ types[10] typede proc_symtab *ProcedureScope; #deine NoProcedureScope ((proc_symtab *)0) This macro is dened in denitions 7, 10, 13, 15, 23, and 27. This macro is invoked in denition 54. Fiure 1: A Specication Frament 4

5 An executable proram as a scope or symbolic names is embodied in a SuiFileSet object, while both proram units and statement unctions are embodied in SuiProcedures. The implied-do in a DATA statement is executed by the translator and thus does not appear in the SUIF proram. Each proram unit is a procedure that denes a scope. The names and types o the procedures must be derived rom context: Scope and Classes o Symbolic Names[15] SYMBOL xproramunit: suiscope: ProcedureScope; SYMBOL xproramunit SYNT.suiscope=NoProcedureScope; RULE: xproramunit ::= xlblde 'subroutine' xsubroutinename xsubproramrane xproramunit.suiscope= NewProcedureScope(GlobalScope,StrinTable(xSubroutineName.Sym)); RULE: xproramunit ::= xlblde xfunctionpreix xfunctionname xsubproramrane xproramunit.suiscope= NewProcedureScope(GlobalScope,StrinTable(xFunctionName.Sym)); RULE: xproramunit ::= xmainrane xproramunit.suiscope=newprocedurescope(globalscope,"main "); RULE: xproramunit ::= xproramstmt xmainrane xproramunit.suiscope=newprocedurescope(globalscope,"main "); This macro is dened in denitions 15 and 16. This macro is invoked in denition 19. Fiure 2: Creatin Scopes or FORTRAN Proram units 5

6 much invested in them to make any chanes. The result is that there is a steady deradation o perormance with time in a hand-coded implementation but not in the enerated processor. 5 Availability The SUIF interace module and the module that converts FORTRAN 77 to SUIF are both available with Eli 4.0. This version o the system is due or release in January, 1996 and is available or beta test by interested parties. Further inormation about Eli can be ound on the World-Wide Web at URL \ eliuser/". 6 Reerences 1. Aho, A. V., Sethi, R. & Ullman, J. D., Compilers, Addison Wesley, Readin, MA, Gray, R. W., Heurin, V. P., Levi, S. P., Sloane, A. M. & Waite, W. M., \Eli: A Complete, Flexible Compiler Construction System," Communications o the ACM 35 (February 1992), 121{ Kastens, U. & Waite, W. M., \Modularity and Reusability in Attribute Grammars," Acta Inormatica 31 (1994), 601{ Knuth, D. E., \Literate Prorammin," The Computer Journal 27 (1984), 97{ Sheridan, P. B., \The FORTRAN Arithmetic-Compiler o the IBM FORTRAN Automatic Codin System," Communications o the ACM 2 (February 1959), 9{. 6. Waite, W. M. & Carter, L. R., An Introduction to Compiler Construction, HarperCollins, New York, Waite, W. M. & Goos, G., Compiler Construction, Spriner Verla, New York, NY,

Status. We ll do code generation first... Outline

Status. We ll do code generation first... Outline Status Run-time Environments Lecture 11 We have covered the ront-end phases Lexical analysis Parsin Semantic analysis Next are the back-end phases Optimization Code eneration We ll do code eneration irst...

More information

RE2C { A More Versatile Scanner Generator. Peter Bumbulis Donald D. Cowan. University of Waterloo. April 15, Abstract

RE2C { A More Versatile Scanner Generator. Peter Bumbulis Donald D. Cowan. University of Waterloo. April 15, Abstract RE2C { A More Versatile Scanner Generator Peter Bumbulis Donald D. Cowan Computer Science Department and Computer Systems Group University o Waterloo April 15, 1994 Abstract It is usually claimed that

More information

Client Host. Server Host. Registry. Client Object. Server. Remote Object. Stub. Skeleton

Client Host. Server Host. Registry. Client Object. Server. Remote Object. Stub. Skeleton Compiler support or an RMI implementation usin NexusJava Fabian Bre Dennis Gannon December 16, 1997 1 Introduction Java [7] is a portable, object oriented prorammin lanuae. Its portability is obtained

More information

Construction of Application Generators Using Eli. Uwe Kastens, University of Paderborn, FRG. Abstract

Construction of Application Generators Using Eli. Uwe Kastens, University of Paderborn, FRG. Abstract Construction of Application Generators Using Eli Uwe Kastens, University of Paderborn, FRG Abstract Application generators are a powerful means for reuse of software design. They produce special purpose

More information

MetaTeD A Meta Language for Modeling. Telecommunication Networks. Kalyan S. Perumalla and Richard M. Fujimoto

MetaTeD A Meta Language for Modeling. Telecommunication Networks. Kalyan S. Perumalla and Richard M. Fujimoto MetaTeD A Meta Lanuae or Modelin Telecommunication Networks Kalyan S. Perumalla and Richard M. Fujimoto (kalyan@cc.atech.edu and ujimoto@cc.atech.edu) Collee o Computin Georia Institute o Technoloy Atlanta,

More information

Ecient Detection of Data Races in SR Programs. Darren John Esau. presented to the University of Waterloo. in fullment of the

Ecient Detection of Data Races in SR Programs. Darren John Esau. presented to the University of Waterloo. in fullment of the Ecient Detection o Data Races in SR Prorams by Darren John Esau A thesis presented to the University o Waterloo in ullment o the thesis requirement or the deree o Master o Mathematics in Computer Science

More information

pp , John Wiley and Sons, 1991 No. 3, 1994, pp , Victoria, 1994 Vol. 37, No. 5, pp Baltimore, 1993 pp.

pp , John Wiley and Sons, 1991 No. 3, 1994, pp , Victoria, 1994 Vol. 37, No. 5, pp Baltimore, 1993 pp. termediate representation used is much simpler than a ull UI specication lanuae. We have also proposed to populate automatically the taret GUI builder space thus allowin desiners/developers to ully exploit

More information

1 Theory 1 (CSc 473): Automata, Grammars, and Lanuaes For any strin w = w 1 w 2 :::w n, define w R to be the reversal of w: w R = w n w n 1 :::w 1. Su

1 Theory 1 (CSc 473): Automata, Grammars, and Lanuaes For any strin w = w 1 w 2 :::w n, define w R to be the reversal of w: w R = w n w n 1 :::w 1. Su Masters Examination Department of Computer Science March 27, 1999 Instructions This examination consists of nine problems. The questions are in three areas: 1. Theory and Alorithms: CSc 473, 545, and 573;

More information

Imitation: An Alternative to Generalization in Programming by Demonstration Systems

Imitation: An Alternative to Generalization in Programming by Demonstration Systems Imitation: An Alternative to Generalization in Prorammin by Demonstration Systems Technical Report UW-CSE-98-08-06 Amir Michail University of Washinton amir@cs.washinton.edu http://www.cs.washinton.edu/homes/amir/opsis.html

More information

OCC and Its Variants. Jan Lindström. Helsinki 7. November Seminar on real-time systems UNIVERSITY OF HELSINKI. Department of Computer Science

OCC and Its Variants. Jan Lindström. Helsinki 7. November Seminar on real-time systems UNIVERSITY OF HELSINKI. Department of Computer Science OCC and Its Variants Jan Lindström Helsinki 7. November 1997 Seminar on real-time systems UNIVERSITY OF HELSINKI Department o Computer Science Contents 1 Introduction 1 2 Optimistic Concurrency Control

More information

Theory (CSc 473): Automata, Grammars, and Lanuaes. Let D = fwjw contains an equal number of occurrences of the substrins 0 and 0 Thus 0 2 D because 0

Theory (CSc 473): Automata, Grammars, and Lanuaes. Let D = fwjw contains an equal number of occurrences of the substrins 0 and 0 Thus 0 2 D because 0 Masters Examination Department of Computer Science October 3, 998 Instructions This examination consists of nine problems. The questions are in three areas:. Theory and Alorithms: CSc 473, 545, and 573;

More information

Coarse Grained Parallel Maximum Matching In Convex Bipartite Graphs

Coarse Grained Parallel Maximum Matching In Convex Bipartite Graphs Coarse Grained Parallel Maximum Matchin In Convex Bipartite Graphs P. Bose, A. Chan, F. Dehne, and M. Latzel School o Computer Science Carleton University Ottawa, Canada K1S 5B6 jit,achan,dehne,mlatzel@scs.carleton.ca

More information

Integrated QOS management for disk I/O. Dept. of Comp. Sci. Dept. of Elec. Engg. 214 Zachry. College Station, TX

Integrated QOS management for disk I/O. Dept. of Comp. Sci. Dept. of Elec. Engg. 214 Zachry. College Station, TX Interated QOS manaement or disk I/O Ravi Wijayaratne A. L. Narasimha Reddy Dept. o Comp. Sci. Dept. o Elec. En. Texas A & M University 214 Zachry Collee Station, TX 77843-3128 ravi,reddy@ee.tamu.edu Abstract

More information

From Java to C A Supplement to Computer Algorithms, Third Edition. Sara Baase Allen Van Gelder

From Java to C A Supplement to Computer Algorithms, Third Edition. Sara Baase Allen Van Gelder From Java to C A Supplement to Computer Alorithms, Third Edition Sara Baase Allen Van Gelder October 30, 2004 ii clcopyriht 2000, 2001 Sara Baase and Allen Van Gelder. All rihts reserved. This document

More information

Centrum voor Wiskunde en Informatica REPORTRAPPORT. Manifold Version 1.0 Programming: Programs and Problems

Centrum voor Wiskunde en Informatica REPORTRAPPORT. Manifold Version 1.0 Programming: Programs and Problems Centrum voor Wiskunde en Inormatica REPORTRAPPORT Maniold Version 1.0 Prorammin: Prorams and Problems C.L. Blom Computer ScienceDepartment o Interactive Systems CS-R9334 1993 Centrum voor Wiskunde en

More information

2 The Vector class takes two template parameters (line 1): T, a type parameter, species the element type or the vector; N, a nontype parameter, is the

2 The Vector class takes two template parameters (line 1): T, a type parameter, species the element type or the vector; N, a nontype parameter, is the C++ Templates as Partial Evaluation Todd L. Veldhuizen Abstract This paper explores the relationship between C++ templates and partial evaluation. Templates were desined to support eneric prorammin, but

More information

A Cell Burst Scheduling for ATM Networking Part II: Implementation

A Cell Burst Scheduling for ATM Networking Part II: Implementation A Cell Burst Schedulin or ATM Networkin Part II: Implementation C. Tan, A. T. Chronopoulos, Senior Member, IEEE Computer Science Department Wayne State University email:ctan, chronos@cs.wayne.edu E. Yaprak,

More information

a<b x = x = c!=d = y x = = x false true

a<b x = x = c!=d = y x = = x false true 1 Introduction 1.1 Predicated execution Predicated execution [HD86, RYYT89, DT93, KSR93] is an architectural model in which each operation is uarded by a boolean operand whose value determines whether

More information

The SpecC Methodoloy Technical Report ICS December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department

The SpecC Methodoloy Technical Report ICS December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department The SpecC Methodoloy Technical Report ICS-99-56 December 29, 1999 Daniel D. Gajski Jianwen Zhu Rainer Doemer Andreas Gerstlauer Shuqin Zhao Department of Information and Computer Science University of

More information

Thread-based vs Event-based Implementation of a Group Communication Service

Thread-based vs Event-based Implementation of a Group Communication Service Thread-based vs Event-based Implementation o a Group Communication Service Shivakant Mishra and Ronuan Yan Department o Computer Science University o Wyomin, P.O. Box 3682 Laramie, WY 8271-3682, USA. Email:

More information

Declarative Specialization of Object-Oriented Programs

Declarative Specialization of Object-Oriented Programs INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE Declarative Specialization of Object-Oriented Prorams Euen N. Volanschi, Charles Consel, Gilles Muller, Crispin Cowan N 3118 Février 1997

More information

JAVA XML PARSING SPECIFICATION

JAVA XML PARSING SPECIFICATION JAVA XML PARSING SPECIFICATION Joona Palaste Abstract: XML is a mark-up lanuae, or more precisely, a definition of mark-up lanuaes which allows information of arbitrary kind to be accurately and hierarchically

More information

Client Host. Server Host. Registry. Client Object. Server. Remote Object. Stub. Skeleton

Client Host. Server Host. Registry. Client Object. Server. Remote Object. Stub. Skeleton Exploitin implicit loop parallelism usin multiple multithreaded servers in Java Fabian Bre Aart Bik Dennis Gannon December 16, 1997 1 Introduction Since its introduction in the late eihties, the lobal

More information

Performance and Overhead Measurements. on the Makbilan. Department of Computer Science. The Hebrew University of Jerusalem

Performance and Overhead Measurements. on the Makbilan. Department of Computer Science. The Hebrew University of Jerusalem Perormance and Overhead Measurements on the Makbilan Yosi Ben-Asher Dror G. Feitelson Dtment o Computer Science The Hebrew University o Jerusalem 91904 Jerusalem, Israel E-mail: yosi,dror@cs.huji.ac.il

More information

Image Fusion for Enhanced Vision System using Laplacian Pyramid

Image Fusion for Enhanced Vision System using Laplacian Pyramid Imae Fusion or Enhanced Vision System usin aplacian Pyramid Abhilash G, T.V. Rama Murthy Department o ECE REVA Institute o Technoloy and Manaement Banalore-64, India V. P. S Naidu MSDF ab, FMCD, CSIR-National

More information

optimization agents user interface agents database agents program interface agents

optimization agents user interface agents database agents program interface agents A MULTIAGENT SIMULATION OPTIMIZATION SYSTEM Sven Hader Department of Computer Science Chemnitz University of Technoloy D-09107 Chemnitz, Germany E-Mail: sha@informatik.tu-chemnitz.de KEYWORDS simulation

More information

Improving Computer Security using Extended Static Checking

Improving Computer Security using Extended Static Checking Improvin Computer Security usin Extended Static Checkin Brian V. Chess Department o Computer Enineerin University o Caliornia, Santa Cruz Abstract We describe a method or indin security laws in source

More information

FPGA Technology Mapping: A Study of Optimality

FPGA Technology Mapping: A Study of Optimality FPGA Technoloy Mappin: A Study o Optimality Andrew Lin Department o Electrical and Computer Enineerin University o Toronto Toronto, Canada alin@eec.toronto.edu Deshanand P. Sinh Altera Corporation Toronto

More information

Eclipse Support for Using Eli and Teaching Programming Languages

Eclipse Support for Using Eli and Teaching Programming Languages Electronic Notes in Theoretical Computer Science 141 (2005) 189 194 www.elsevier.com/locate/entcs Eclipse Support for Using Eli and Teaching Programming Languages Anthony M. Sloane 1,2 Department of Computing

More information

f y f x f z exu f xu syu s y s x s zl ezl f zl s zu ezu f zu sign logic significand multiplier exponent adder inc multiplexor multiplexor ty

f y f x f z exu f xu syu s y s x s zl ezl f zl s zu ezu f zu sign logic significand multiplier exponent adder inc multiplexor multiplexor ty A Combined Interval and Floatin Point Multiplier James E. Stine and Michael J. Schulte Computer Architecture and Arithmetic Laboratory Electrical Enineerin and Computer Science Department Lehih University

More information

Aspect-oriented programming with AspectJ

Aspect-oriented programming with AspectJ Aspect-oriented prorammin with AspectJ & A. Colyer A. Clement Aspect-oriented prorammin (AOP) is an excitin new development in the field of software enineerin. The open-source AspectJt project has taken

More information

Dynamic Reconguration of. Distributed Applications. University of Maryland. College Park, MD Abstract

Dynamic Reconguration of. Distributed Applications. University of Maryland. College Park, MD Abstract Dynamic Reconuration of Distributed Applications Christine R. Hofmeister Department of Computer Science University of Maryland Collee Park, MD 20742 Abstract Applications requirin concurrency or access

More information

Stop & Copy. Gen1 Gen2 Gen3. top

Stop & Copy. Gen1 Gen2 Gen3. top A Customisable Memory Manaement Framework for C++ Giuseppe Attardi, Tito Flaella and Pietro Ilio Dipartimento di Informatica, Universita di Pisa Corso Italia 40, I-56125 Pisa, Italy email: attardi@di.unipi.it,

More information

2 CHAPTR 1. BOTTOM UP PARSING 1. S ::= 4. T ::= T* F 2. ::= +T 5. j F 3. j T 6. F ::= 7. j Fiure 1.1: Our Sample Grammar for Bottom Up Parsin Our beli

2 CHAPTR 1. BOTTOM UP PARSING 1. S ::= 4. T ::= T* F 2. ::= +T 5. j F 3. j T 6. F ::= 7. j Fiure 1.1: Our Sample Grammar for Bottom Up Parsin Our beli Chapter 1 Bottom Up Parsin The key diæculty with top-down parsin is the requirement that the rammar satisfy the LL1 property. You will recall that this entailed knowin, when you are facin the token that

More information

Theodore Johnson. Dept. of Computer and Information Science, University of Florida. Abstract

Theodore Johnson. Dept. of Computer and Information Science, University of Florida. Abstract A Concurrent Fast-Fits Memory Manaer University o Florida, Dept. o CIS Electronic TR91-009 Theodore Johnson Dept. o Computer and Inormation Science, University o Florida ted@cis.u.edu September 12, 1991

More information

RTL Modeling in C++ Technical Report ICS April 30, Shuqing Zhao. Irvine, CA , USA (949)

RTL Modeling in C++ Technical Report ICS April 30, Shuqing Zhao. Irvine, CA , USA (949) RTL Modelin in C++ Technical Report ICS-01-18 April 30, 2001 Shuqin Zhao Department o Inormation and Computer Science University o Caliornia, Irvine Irvine, CA 92697-3425, USA (949)824-8059 szhao@ics.uci.edu

More information

LEGEND. Cattail Sawgrass-Cattail Mixture Sawgrass-Slough. Everglades. National. Park. Area of Enlargement. Lake Okeechobee

LEGEND. Cattail Sawgrass-Cattail Mixture Sawgrass-Slough. Everglades. National. Park. Area of Enlargement. Lake Okeechobee An Ecient Parallel Implementation of the Everlades Landscape Fire Model Usin Checkpointin Fusen He and Jie Wu Department of Computer Science and Enineerin Florida Atlantic University Boca Raton, FL 33431

More information

Backwards-compatible bounds checking for arrays and pointers in C. programs. Richard W M Jones and Paul H J Kelly. Department of Computing

Backwards-compatible bounds checking for arrays and pointers in C. programs. Richard W M Jones and Paul H J Kelly. Department of Computing Backwards-compatible bounds checkin or arrays and pointers in C prorams Richard W M Jones and Paul H J Kelly Department o Computin Imperial Collee o Science, Technoloy and Medicine 180 Queen's Gate, London

More information

Using LDAP Directory Caches. Olga Kapitskaia. AT&T Labs{Research. on sample queries from a directory enabled application

Using LDAP Directory Caches. Olga Kapitskaia. AT&T Labs{Research. on sample queries from a directory enabled application Usin LDAP Directory Caches Sophie Cluet INRIA Rocquencourt Sophie.Cluet@inria.fr Ola Kapitskaia AT&T Labs{Research ola@research.att.com Divesh Srivastava AT&T Labs{Research divesh@research.att.com 1 Introduction

More information

DSL Design. Overview of DSLE. DSL Design. DSL Desing. Domain specific languages

DSL Design. Overview of DSLE. DSL Design. DSL Desing. Domain specific languages Overview of DSLE Model driven software enineerin in eneral Grammars, and meta-models Code eneration Model-driven enineerin Goal: Raisin the level of abstraction from the computin domain to the problem

More information

General Design of Grid-based Data Replication. Schemes Using Graphs and a Few Rules. availability of read and write operations they oer and

General Design of Grid-based Data Replication. Schemes Using Graphs and a Few Rules. availability of read and write operations they oer and General esin of Grid-based ata Replication Schemes Usin Graphs and a Few Rules Oliver Theel University of California epartment of Computer Science Riverside, C 92521-0304, US bstract Grid-based data replication

More information

Wirsin and Knapp To close partly this ap we propose a combination o ormal specication techniques with pramatic sotware enineerin methods. Our specicat

Wirsin and Knapp To close partly this ap we propose a combination o ormal specication techniques with pramatic sotware enineerin methods. Our specicat Electronic Notes in Theoretical Computer Science 4 (1996) A Formal Approach to Object-Oriented Sotware Enineerin Martin Wirsin and Alexander Knapp 1 Ludwi{Maximilians{Universitat Munchen Institut ur Inormatik

More information

Web e-transactions. Svend Frolund, Fernando Pedone, Jim Pruyne Software Technology Laboratory HP Laboratories Palo Alto HPL July 12 th, 2001*

Web e-transactions. Svend Frolund, Fernando Pedone, Jim Pruyne Software Technology Laboratory HP Laboratories Palo Alto HPL July 12 th, 2001* Web e-transactions Svend Frolund, Fernando Pedone, Jim Pruyne Software Technoloy Laboratory HP Laboratories Palo Alto HPL-2001-177 July 12 th, 2001* E-mail: {frolund, pedone, pruyne} @ hpl.hp.com reliability,

More information

Efficient and Provably Secure Ciphers for Storage Device Block Level Encryption

Efficient and Provably Secure Ciphers for Storage Device Block Level Encryption Efficient and Provably Secure Ciphers for Storae Device Block evel Encryption Yulian Zhen SIS Department, UNC Charlotte yzhen@uncc.edu Yone Wan SIS Department, UNC Charlotte yonwan@uncc.edu ABSTACT Block

More information

A Flexible Integration Strategy for In-Car Telematics Systems

A Flexible Integration Strategy for In-Car Telematics Systems A Flexible Interation Stratey for In-Car Telematics Systems Thomas Bauer Jens Herrmann Peter Liesmeyer Christopher Robinson-Mallett University of Potsdam Hasso-Plattner-Institute thomas.bauer @hpi.uni-potsdam.de

More information

10. SOPC Builder Component Development Walkthrough

10. SOPC Builder Component Development Walkthrough 10. SOPC Builder Component Development Walkthrough QII54007-9.0.0 Introduction This chapter describes the parts o a custom SOPC Builder component and guides you through the process o creating an example

More information

An Internet Collaborative Environment for Sharing Java Applications

An Internet Collaborative Environment for Sharing Java Applications An Internet Collaborative Environment for Sharin Java Applications H. Abdel-Wahab and B. Kvande Department of Computer Science Old Dominion University Norfolk, Va 23529 fwahab,kvande@cs.odu.edu O. Kim

More information

The performance of single-keyword and multiple-keyword. pattern matching algorithms. Bruce W. Watson. Eindhoven University of Technology

The performance of single-keyword and multiple-keyword. pattern matching algorithms. Bruce W. Watson. Eindhoven University of Technology The performance of sinle-keyword and multiple-keyword pattern matchin alorithms Bruce W. Watson Faculty of Mathematics and Computin Science Eindhoven University of Technoloy P.O. Box 513, 5600 MB Eindhoven,

More information

int FindToken(int *data, int count, int token) f int i = 0, *p = data while ((i < count) && (*p!= token)) f p++ i++ return (*p == token) typedef f <ty

int FindToken(int *data, int count, int token) f int i = 0, *p = data while ((i < count) && (*p!= token)) f p++ i++ return (*p == token) typedef f <ty Ecient Detection of All Pointer and Array Access Errors Todd M. Austin Scott E. Breach Gurindar S. Sohi Computer Sciences Department University of Wisconsin-Madison 1210 W. Dayton Street Madison, WI 53706

More information

o code which one must write: modern lanuaes have complicated syntax trees, and so code which manipulates and enerates these trees tends to be complex

o code which one must write: modern lanuaes have complicated syntax trees, and so code which manipulates and enerates these trees tends to be complex C++ Templates as Partial Evaluation Todd L. Veldhuizen Abstract This paper explores the relationship between C++ templates and partial evaluation. Templates were desined to support eneric prorammin but

More information

disambiuation, conservative assumptions about memory dependence have to be made, leavin the code optimized in a dissatised way. Many researchers have

disambiuation, conservative assumptions about memory dependence have to be made, leavin the code optimized in a dissatised way. Many researchers have A Practical Interprocedural Pointer Analysis Framework Ben-Chun Chen Wen-mei W. Hwu y Department of Computer Science y Department of Electrical and Computer Enineerin The Coordinated Science Laboratory

More information

Pizza ëordersky 1997ë. However, we felt that Pizza èand other similar lanuaesè suered from one fault that we had taken pains to avoid in the oriinal d

Pizza ëordersky 1997ë. However, we felt that Pizza èand other similar lanuaesè suered from one fault that we had taken pains to avoid in the oriinal d Multiparadim Extensions to Java Timothy A.Budd Department of Computer Science Oreon State University Corvallis, Oreon, USA November 1, 2000 Abstract In 1995 my students and I developed Leda, a multiparadim

More information

Salto: System for Assembly-Language. Transformation and Optimization. Erven Rohou, Francois Bodin, Andre Seznec.

Salto: System for Assembly-Language. Transformation and Optimization. Erven Rohou, Francois Bodin, Andre Seznec. Salto: System for Assembly-Lanuae Transformation and Optimization Erven Rohou, Francois Bodin, Andre Seznec ferohou,bodin,seznec@irisa.fr Abstract On critical applications the performance tunin requires

More information

In Proceedings of ICPP 90, The 1990 International Conference on Parallel Processing, Chicago,Illinois, August 1990.

In Proceedings of ICPP 90, The 1990 International Conference on Parallel Processing, Chicago,Illinois, August 1990. In Proceedins of IPP 9, The 99 International onference on Parallel Processin, hicao,illinois, uust 99. SETH VLSI HIP FOR THE REL-TIME INFORMTION DISPERSL ND RETRIEVL FOR SEURITY ND FULT-TOLERNE zer estavros

More information

mga in C: A Messy Genetic Algorithm in C Kalyanmoy Deb and David E. Goldberg University of Illinois at Urbana-Champaign Urbana, IL 61801

mga in C: A Messy Genetic Algorithm in C Kalyanmoy Deb and David E. Goldberg University of Illinois at Urbana-Champaign Urbana, IL 61801 mga in C: A Messy Genetic Alorithm in C Kalyanmoy Deb and David E. Goldber Department o General Enineerin University o Illinois at Urbana-Champain Urbana, IL 61801 IlliGAL Report No. 91008 September 1991

More information

Learning Geometric Concepts with an Evolutionary Algorithm. Andreas Birk. Universitat des Saarlandes, c/o Lehrstuhl Prof. W.J.

Learning Geometric Concepts with an Evolutionary Algorithm. Andreas Birk. Universitat des Saarlandes, c/o Lehrstuhl Prof. W.J. Learnin Geometric Concepts with an Evolutionary Alorithm Andreas Birk Universitat des Saarlandes, c/o Lehrstuhl Prof. W.J. Paul Postfach 151150, 66041 Saarbrucken, Germany cyrano@cs.uni-sb.de http://www-wjp.cs.uni-sb.de/cyrano/

More information

Department of Computer Science, University of Utah. 1 Introduction

Department of Computer Science, University of Utah. 1 Introduction International Conference on Computer Systems and Education, IISc, Banalore, 1994 Type-safe Composition of Object Modules Guruduth Banavar, Gary Lindstrom, Doulas Orr Department of Computer Science, University

More information

Texture Un mapping. Computer Vision Project May, Figure 1. The output: The object with texture.

Texture Un mapping. Computer Vision Project May, Figure 1. The output: The object with texture. Texture Un mappin Shinjiro Sueda sueda@cs.ruters.edu Dinesh K. Pai dpai@cs.ruters.edu Computer Vision Project May, 2003 Abstract In computer raphics, texture mappin refers to the technique where an imae

More information

The Compositional C++ Language. Denition. Abstract. This document gives a concise denition of the syntax and semantics

The Compositional C++ Language. Denition. Abstract. This document gives a concise denition of the syntax and semantics The Compositional C++ Language Denition Peter Carlin Mani Chandy Carl Kesselman March 12, 1993 Revision 0.95 3/12/93, Comments welcome. Abstract This document gives a concise denition of the syntax and

More information

to chanes in the user interface desin. By embeddin the object-oriented, interpreted lanuae into the application, it can also be used as a tool for rer

to chanes in the user interface desin. By embeddin the object-oriented, interpreted lanuae into the application, it can also be used as a tool for rer Usin C++ Class Libraries from an Interpreted Lanuae Wolfan Heidrich, Philipp Slusallek, Hans-Peter Seidel Computer Graphics Department, Universitat Erlanen-Nurnber Am Weichselarten 9, 91058 Erlanen, Germany.

More information

arxiv:cs/ v2 [cs.pl] 2 Nov 1998

arxiv:cs/ v2 [cs.pl] 2 Nov 1998 C++ Templates as Partial Evaluation Todd L. Veldhuizen arxiv:cs/9810010v2 [cs.pl] 2 Nov 1998 Abstract This paper explores the relationship between C++ templates and partial evaluation. Templates were desined

More information

A Rigorous Correctness Proof of a Tomasulo Scheduler Supporting Precise Interrupts

A Rigorous Correctness Proof of a Tomasulo Scheduler Supporting Precise Interrupts A Riorous Correctness Proo o a Tomasulo Scheduler Supportin Precise Interrupts Daniel Kroenin Λ, Silvia M. Mueller y, and Wolan J. Paul Dept. 14: Computer Science, University o Saarland, Post Box 151150,

More information

Straiht Line Detection Any straiht line in 2D space can be represented by this parametric euation: x; y; ; ) =x cos + y sin, =0 To nd the transorm o a

Straiht Line Detection Any straiht line in 2D space can be represented by this parametric euation: x; y; ; ) =x cos + y sin, =0 To nd the transorm o a Houh Transorm E186 Handout Denition The idea o Houh transorm is to describe a certain line shape straiht lines, circles, ellipses, etc.) lobally in a parameter space { the Houh transorm domain. We assume

More information

int x,y; Point; typedef enum f RED, BLUE color; int x,y; color c; ColorPoint; void translatex(point *p, int dx) f p->x += dx; main() f Point pt; Color

int x,y; Point; typedef enum f RED, BLUE color; int x,y; color c; ColorPoint; void translatex(point *p, int dx) f p->x += dx; main() f Point pt; Color Appears as Bell Laboratories Technical Report BL011350-990202-03. Copin with Type Casts in C Michael Si, Satish Chandra?, Thomas Ball? Krishna Kunchithapadam >, Thomas Reps > Mathematics Dept? Software

More information

Modied Java-to-bytecode compiler that extends the Java lanuae with eneralized operator overloadin; Array class libraries that use the operator overloa

Modied Java-to-bytecode compiler that extends the Java lanuae with eneralized operator overloadin; Array class libraries that use the operator overloa JaLA: a Java packae for Linear Alebra David F. Bacon IBM T.J. Watson Research Center 1 Introduction While the Java lanuae has taken the world by storm, it has left the scientic computin community out in

More information

IBM Thomas J. Watson Research Center. Yorktown Heights, NY, U.S.A. The major advantage of BDDs is their eciency for a

IBM Thomas J. Watson Research Center. Yorktown Heights, NY, U.S.A. The major advantage of BDDs is their eciency for a Equivalence Checkin Usin Cuts and Heaps Andreas Kuehlmann Florian Krohm IBM Thomas J. Watson Research Center Yorktown Heihts, NY, U.S.A. Abstract This paper presents a verication technique which is specically

More information

Motivation Dynamic bindin facilitates more exible and extensible software architectures, e.., { Not all desin decisions need to be known durin the ini

Motivation Dynamic bindin facilitates more exible and extensible software architectures, e.., { Not all desin decisions need to be known durin the ini The C++ Prorammin Lanuae Dynamic Bindin Outline Motivation Dynamic vs. Static Bindin Shape Example Callin Mechanisms Downcastin Run-Time Type Identication Summary Motivation When desinin a system it is

More information

Subject 1.- Introduction to Scheme language. First part: Scheme. Second part: Prolog

Subject 1.- Introduction to Scheme language. First part: Scheme. Second part: Prolog CÓRDOBA UNIVERSITY SUPERIOR POLYTECHNIC SCHOOL DEPARTMENT OF COMPUTER SCIENCE AND NUMERICAL ANALYSIS DECLARATIVE PROGRAMMING COMPUTER ENGINEERING COMPUTATION ESPECIALITY FOURTH YEAR FIRST FOUR-MONTH PERIOD

More information

Compiler Design (40-414)

Compiler Design (40-414) Compiler Design (40-414) Main Text Book: Compilers: Principles, Techniques & Tools, 2 nd ed., Aho, Lam, Sethi, and Ullman, 2007 Evaluation: Midterm Exam 35% Final Exam 35% Assignments and Quizzes 10% Project

More information

Using VCS with the Quartus II Software

Using VCS with the Quartus II Software Using VCS with the Quartus II Sotware December 2002, ver. 1.0 Application Note 239 Introduction As the design complexity o FPGAs continues to rise, veriication engineers are inding it increasingly diicult

More information

What is a language? Eclipse IMP: ... is Generic Language. Technology (GLT)? What is a Program Generator?

What is a language? Eclipse IMP:  ... is Generic Language. Technology (GLT)? What is a Program Generator? Examples of Generic IPEs What... Eclipse IMP: http://eclipse- -imp.sourcefore.net/imp.html... is a lanuae? Af framework kfor Generi ic Interated ddevelopment Environments (IDE) The oal of the Eclipse IMP

More information

main Entry main main pow Entry pow pow

main Entry main main pow Entry pow pow Interprocedural Path Prolin David Melski and Thomas Reps Computer Sciences Department, University of Wisconsin, 20 West Dayton Street, Madison, WI, 53706, USA, fmelski, reps@cs.wisc.edu Abstract. In path

More information

Elkhound: A Fast, Practical GLR Parser Generator Scott McPeak University of California, Berkeley smcpeak@cs.berkeley.edu Report No. UCB/CSD--4 December 00 Computer Science Division (EECS) University of

More information

in two important ways. First, because each processor processes lare disk-resident datasets, the volume of the communication durin the lobal reduction

in two important ways. First, because each processor processes lare disk-resident datasets, the volume of the communication durin the lobal reduction Compiler and Runtime Analysis for Ecient Communication in Data Intensive Applications Renato Ferreira Gaan Arawal y Joel Saltz Department of Computer Science University of Maryland, Collee Park MD 20742

More information

abstract class CustomerRole abstract class ChargerRole abstract double cost(int qty, double unitprice, ItemRole item)

abstract class CustomerRole abstract class ChargerRole abstract double cost(int qty, double unitprice, ItemRole item) Component Interation with Pluable Composite Adapters Mira Mezini (mira@informatik.uni-sieen.de) University of Sieen Linda Seiter (lseiter@scu.edu) Santa Clara University Karl Lieberherr (lieber@ccs.neu.edu)

More information

An Interactive Desk Calculator. Project P2 of. Common Lisp: An Interactive Approach. Stuart C. Shapiro. Department of Computer Science

An Interactive Desk Calculator. Project P2 of. Common Lisp: An Interactive Approach. Stuart C. Shapiro. Department of Computer Science An Interactive Desk Calculator Project P2 of Common Lisp: An Interactive Approach Stuart C. Shapiro Department of Computer Science State University of New York at Bualo January 25, 1996 The goal of this

More information

Using Real-Time Serializability and Optimistic Concurrency Control in Firm Real-Time Databases

Using Real-Time Serializability and Optimistic Concurrency Control in Firm Real-Time Databases Usin Real-Time Serializability and Optimistic Concurrency Control in Firm Real-Time Databases Jan Lindström and Kimmo Raatikainen University o Helsinki, Department o Computer Science P.O. Box 26 (Teollisuuskatu

More information

Communication Networks ( ) / Spring 2011 The Blavatnik School of Computer Science, Tel-Aviv University

Communication Networks ( ) / Spring 2011 The Blavatnik School of Computer Science, Tel-Aviv University ommunication Networks (0368-3030) / Sprin 0 The lavatnik School o omputer Science, Tel-viv University llon Waner urose & Ross, hapters 5.5-5.6 (5 th ed.) Tanenbaum & Wetherall, hapters 4.3.4 4.3.8 (5 th

More information

IEEE TRANSACTIONS ON COMPUTERS, VOL. 48, NO. 2, FEBRUARY Automatic Compiler-Inserted Prefetching for. Chi-Keung Luk and Todd C.

IEEE TRANSACTIONS ON COMPUTERS, VOL. 48, NO. 2, FEBRUARY Automatic Compiler-Inserted Prefetching for. Chi-Keung Luk and Todd C. IEEE TRANSACTIONS ON COMPUTERS, VOL. 48, NO. 2, FEBRUARY 1999 1 Automatic Compiler-Inserted Preetchin or Pointer-Based Applications Chi-Keun Luk and Todd C. Mowry Abstract As the disparity between processor

More information

Chapter 4. Coding systems. 4.1 Binary codes Gray (reflected binary) code

Chapter 4. Coding systems. 4.1 Binary codes Gray (reflected binary) code Chapter 4 Codin systems Codin systems define how information is mapped to numbers. Different codin systems try to store/transmit information more efficiently [Sec. 4.], or protect it from damae while it

More information

SIMPACK: GETTING STARTED WITH SIMULATION PROGRAMMING IN C AND C++ Paul A. Fishwick. University of Florida. Bldg. CSE, Room 301

SIMPACK: GETTING STARTED WITH SIMULATION PROGRAMMING IN C AND C++ Paul A. Fishwick. University of Florida. Bldg. CSE, Room 301 SIMPACK: GETTING STARTED WITH SIMULATION PROGRAMMING IN C AND C++ Paul A. Fishwick Dept. of Computer & Information Science University of Florida Bld. CSE, Room 301 Gainesville, FL 32611 ABSTRACT SimPack

More information

Language (TeD) Brian J. Premore, David M. Nicol, Xiaowen Liu. Abstract

Language (TeD) Brian J. Premore, David M. Nicol, Xiaowen Liu. Abstract Dartmouth Collee Computer Science Technical Report PCS-TR96-299 A Critique o the Telecommunication Description Lanuae (TeD) Brian J. Premore, David M. Nicol, Xiaowen Liu Department o Computer Science Dartmouth

More information

Measuring the Vulnerability of Interconnection. Networks in Embedded Systems. University of Massachusetts, Amherst, MA 01003

Measuring the Vulnerability of Interconnection. Networks in Embedded Systems. University of Massachusetts, Amherst, MA 01003 Measuring the Vulnerability o Interconnection Networks in Embedded Systems V. Lakamraju, Z. Koren, I. Koren, and C. M. Krishna Department o Electrical and Computer Engineering University o Massachusetts,

More information

Towards a Multi Metamodelling Approach for Developing Distributed Healthcare Applications

Towards a Multi Metamodelling Approach for Developing Distributed Healthcare Applications Towards a Multi Metamodellin Approach or Developin Distributed Healthcare Applications Fazle Rabbi 1,2, nve lamo 1, Inrid Chieh u 2, Lars Michael Kristensen 1 1 Beren Universit Collee, Beren, Norwa ra@hib.no,

More information

BinaryOperator. Array BinaryOpExpr Plus

BinaryOperator. Array BinaryOpExpr Plus Just when you thouht your little lanuae was sae: \Expression Templates" in Java ToddL.Veldhuizen Extreme Computin Laboratory Indiana University Computer Science Department Bloominton Indiana 47405, USA

More information

(a) (b) Back End. Type. Partial Evaluation. Back End. User source files. AST Type AST IL IL Lex/Parse Translation Optimizer Analysis.

(a) (b) Back End. Type. Partial Evaluation. Back End. User source files. AST Type AST IL IL Lex/Parse Translation Optimizer Analysis. Five compilation models or C++ templates (Extended Abstract) Todd L. Veldhuizen Extreme Computin Laboratory Indiana University Computer Science Department Bloomon Indiana 47405, USA tveldhui@acm.or Abstract

More information

A Nearest Neighbor Method for Efficient ICP

A Nearest Neighbor Method for Efficient ICP A Nearest Neihbor Method or Eicient ICP Michael Greenspan Guy Godin Visual Inormation Technoloy Group Institute or Inormation Technoloy, National Research Council Canada Bld. M50, 1500 Montreal Rd., Ottawa,

More information

Ecient and Precise Modeling of Exceptions for the Analysis of Java Programs. IBM Research. Thomas J. Watson Research Center

Ecient and Precise Modeling of Exceptions for the Analysis of Java Programs. IBM Research. Thomas J. Watson Research Center Ecient and Precise Modelin of Exceptions for the Analysis of Java Prorams Jon-Deok Choi David Grove Michael Hind Vivek Sarkar IBM Research Thomas J. Watson Research Center P.O. Box 704, Yorktown Heihts,

More information

Supporting Persistent Object Systems in a Single Address Space 1

Supporting Persistent Object Systems in a Single Address Space 1 Supportin Persistent Object Systems in a Sinle Address Space 1 Kevin Elphinstone, Stephen Russell, Gernot Heiser 2 School of Computer Science & Enineerin, The University of New South Wales, Sydney 2052,

More information

Language and Compiler Support for Dynamic Code Generation by Massimiliano A. Poletto S.B., Massachusetts Institute of Technology (1995) M.Eng., Massac

Language and Compiler Support for Dynamic Code Generation by Massimiliano A. Poletto S.B., Massachusetts Institute of Technology (1995) M.Eng., Massac Lanuae and Compiler Support for Dynamic Code Generation by Massimiliano A. Poletto S.B., Massachusetts Institute of Technoloy (1995) M.En., Massachusetts Institute of Technoloy (1995) Submitted to the

More information

Generell Topologi. Richard Williamson. May 6, 2013

Generell Topologi. Richard Williamson. May 6, 2013 Generell Topologi Richard Williamson May 6, Thursday 7th January. Basis o a topological space generating a topology with a speciied basis standard topology on R examples Deinition.. Let (, O) be a topological

More information

1 Introduction It is not dicult to convince prorammers (or employers of prorammers) that prorammin errors are costly, both in terms of time and money.

1 Introduction It is not dicult to convince prorammers (or employers of prorammers) that prorammin errors are costly, both in terms of time and money. Ecient Detection of All Pointer and Array Access Errors Todd M. Austin Scott E. Breach Gurindar S. Sohi Computer Sciences Department University of Wisconsin-Madison 1210 W. Dayton Street Madison, WI 53706

More information

Adding Constraint Systems to DFKI Oz. Tobias Muller. German Research Center for Articial Intelligence (DFKI) D Saarbrucken,

Adding Constraint Systems to DFKI Oz. Tobias Muller. German Research Center for Articial Intelligence (DFKI) D Saarbrucken, Addin Constraint Systems to DFKI Oz Tobias Muller German Research Center for Articial Intellience (DFKI) D-66123 Saarbrucken, Stuhlsatzenhauswe 3, Germany Email: tmueller@dfki.uni-sb.de Abstract We present

More information

DESIGN PATTERNS IN GARBAGE COLLECTION. A thesis. submitted in partial fulfilment. of the requirements for the Degree

DESIGN PATTERNS IN GARBAGE COLLECTION. A thesis. submitted in partial fulfilment. of the requirements for the Degree DESIGN PATTERNS IN GARBAGE COLLECTION A thesis submitted in partial fulfilment of the requirements for the Deree of Master of Science in Computer Science in the University of Canterbury by Stuart Andrew

More information

Linear Network Coding

Linear Network Coding IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 49, NO. 2, FEBRUARY 2003 371 Linear Network Codin Shuo-Yen Robert Li, Senior Member, IEEE, Raymond W. Yeun, Fellow, IEEE, Nin Cai Abstract Consider a communication

More information

Single-pass Static Semantic Check for Efficient Translation in YAPL

Single-pass Static Semantic Check for Efficient Translation in YAPL Single-pass Static Semantic Check for Efficient Translation in YAPL Zafiris Karaiskos, Panajotis Katsaros and Constantine Lazos Department of Informatics, Aristotle University Thessaloniki, 54124, Greece

More information

THE FINANCIAL CALCULATOR

THE FINANCIAL CALCULATOR Starter Kit CHAPTER 3 Stalla Seminars THE FINANCIAL CALCULATOR In accordance with the AIMR calculator policy in eect at the time o this writing, CFA candidates are permitted to use one o two approved calculators

More information

U1 S1 T1 U2 S1 T2 U3 S2 T3 U4 S3 T4

U1 S1 T1 U2 S1 T2 U3 S2 T3 U4 S3 T4 A Toolkit of Services for Implementin Fault-Tolerant Distributed Protocols Flaviu Cristian Department of Computer Science & Enineerin University of California, San Dieo La Jolla, CA 92093-0114, U.S.A.

More information

Slicing Multi-threaded Java Programs : A Case Study

Slicing Multi-threaded Java Programs : A Case Study Slicin Multi-threaded Java Prorams : A Case Study Matthew B. Dwyer y, James C. Corbett z, John Hatcliff y, Stefan Sokolowski y, Honjun Zhen y ydepartment of Computin and Information Sciences Kansas State

More information

Modular Design of Fuzzy Controller Integrating Deliberative and. Reactive Strategies. Technical Computer Science, Faculty of Technology,

Modular Design of Fuzzy Controller Integrating Deliberative and. Reactive Strategies. Technical Computer Science, Faculty of Technology, Modular Desin of Fuzzy Controller Interatin Deliberative and Reactive Strateies Jianwei Zhan, Frank Wille and Alois Knoll Technical Computer Science, Faculty of Technoloy, University of Bielefeld, 33501

More information