Pub Date : 1999-04-01DOI: 10.1002/(SICI)1096-9942(1999)5:2<73::AID-TAPO1>3.0.CO;2-W
S. Demeyer, M. Rieger, T. Meijler, E. Gelsema
Object-oriented frameworks are a particularly appealing approach towards software reuse. An object-oriented framework represents a design for a family of applications, where variations in the application domain are tackled by filling in the so-called hot spots. However, experience has shown that the current object-oriented mechanisms (class inheritance and object composition) are not able to elegantly support the "fill in the hot spot" idea. This paper introduces class composition as a more productive approach towards hot spots, offering all of the advantages of both class inheritance and object composition but involving extra work for the framework designer.
{"title":"Class Composition for Specifying Framework Design","authors":"S. Demeyer, M. Rieger, T. Meijler, E. Gelsema","doi":"10.1002/(SICI)1096-9942(1999)5:2<73::AID-TAPO1>3.0.CO;2-W","DOIUrl":"https://doi.org/10.1002/(SICI)1096-9942(1999)5:2<73::AID-TAPO1>3.0.CO;2-W","url":null,"abstract":"Object-oriented frameworks are a particularly appealing approach towards software reuse. An object-oriented framework represents a design for a family of applications, where variations in the application domain are tackled by filling in the so-called hot spots. However, experience has shown that the current object-oriented mechanisms (class inheritance and object composition) are not able to elegantly support the \"fill in the hot spot\" idea. This paper introduces class composition as a more productive approach towards hot spots, offering all of the advantages of both class inheritance and object composition but involving extra work for the framework designer.","PeriodicalId":293061,"journal":{"name":"Theory Pract. Object Syst.","volume":"103 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124184572","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1999-04-01DOI: 10.1002/(SICI)1096-9942(1999)5:2<97::AID-TAPO3>3.0.CO;2-G
V. Vasconcelos
Based on a name-passing calculus and on its typing system we show how to build several language constructors towards strongly-typed concurrent programming languages. In particular, we introduce a notion of datatype declaration , and show how to create values of a datatype and how to take such values apart. Further expressions include a form of abstraction and of application. Expressions evaluate to names and can replace any (non-binding) name in the calculus, thus achieving a clean incorporation of expressions in a name-passing calculus. A systematic translation of the derived constructors into the basic calculus provides for the semantics and for typing rules for the new construc-tors. c
{"title":"Processes, Functions, and Datatypes","authors":"V. Vasconcelos","doi":"10.1002/(SICI)1096-9942(1999)5:2<97::AID-TAPO3>3.0.CO;2-G","DOIUrl":"https://doi.org/10.1002/(SICI)1096-9942(1999)5:2<97::AID-TAPO3>3.0.CO;2-G","url":null,"abstract":"Based on a name-passing calculus and on its typing system we show how to build several language constructors towards strongly-typed concurrent programming languages. In particular, we introduce a notion of datatype declaration , and show how to create values of a datatype and how to take such values apart. Further expressions include a form of abstraction and of application. Expressions evaluate to names and can replace any (non-binding) name in the calculus, thus achieving a clean incorporation of expressions in a name-passing calculus. A systematic translation of the derived constructors into the basic calculus provides for the semantics and for typing rules for the new construc-tors. c","PeriodicalId":293061,"journal":{"name":"Theory Pract. Object Syst.","volume":"217 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117179071","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1998-10-12DOI: 10.1002/(SICI)1096-9942(1998)4:4<227::AID-TAPO3>3.3.CO;2-L
L. Brown, M. Consens, I. Davis, C. R. Palmer, Frank Wm. Tompa
There is a growing need to develop tools that are able to retrieve relevant textual information rapidly, to present textual information in a meaningful way, and to integrate textual information with related data retrieved from other sources. These tools are critical to support applications within corporate intranets and across the rapidly evolving World Wide Web. This paper introduces a framework for modelling structured text and presents a small set of operations that may be applied against such models. Using these operations structured text may be selected, marked, fragmented, and transformed into relations for use in relational and object-oriented database systems. The extended functionality has been accepted for inclusion within the SQL/MM standard, and a prototype database engine has been implemented to support SQL with the proposed extensions. This prototype serves as a proof of concept intended to address industrial concerns, and it demonstrates the power of the proposed abstract data type for structured text. 1. The challenge Database technology is essential to the operation of conventional business enterprises, and it is becoming increasingly important in the development of distributed information systems. However, most database systems, and in particular relational database systems, provide few facilities for effectively managing the vast body of electronic information embedded within text. Many customers require that large texts be searched both vertically, with respect to their internal structure, and horizontally, with respect to their textual content [Wei85]. Texts often need to be fragmented at appropriate structural boundaries. Sometimes selected text needs to be extracted as separate units, but often the appropriate context surrounding selected text must be recovered, and thus the selected text needs to be marked in some manner, so that it can be subsequently located within a potentially much larger context.
{"title":"A Structured Text ADT for Object-Relational Databases","authors":"L. Brown, M. Consens, I. Davis, C. R. Palmer, Frank Wm. Tompa","doi":"10.1002/(SICI)1096-9942(1998)4:4<227::AID-TAPO3>3.3.CO;2-L","DOIUrl":"https://doi.org/10.1002/(SICI)1096-9942(1998)4:4<227::AID-TAPO3>3.3.CO;2-L","url":null,"abstract":"There is a growing need to develop tools that are able to retrieve relevant textual information rapidly, to present textual information in a meaningful way, and to integrate textual information with related data retrieved from other sources. These tools are critical to support applications within corporate intranets and across the rapidly evolving World Wide Web. This paper introduces a framework for modelling structured text and presents a small set of operations that may be applied against such models. Using these operations structured text may be selected, marked, fragmented, and transformed into relations for use in relational and object-oriented database systems. The extended functionality has been accepted for inclusion within the SQL/MM standard, and a prototype database engine has been implemented to support SQL with the proposed extensions. This prototype serves as a proof of concept intended to address industrial concerns, and it demonstrates the power of the proposed abstract data type for structured text. 1. The challenge Database technology is essential to the operation of conventional business enterprises, and it is becoming increasingly important in the development of distributed information systems. However, most database systems, and in particular relational database systems, provide few facilities for effectively managing the vast body of electronic information embedded within text. Many customers require that large texts be searched both vertically, with respect to their internal structure, and horizontally, with respect to their textual content [Wei85]. Texts often need to be fragmented at appropriate structural boundaries. Sometimes selected text needs to be extracted as separate units, but often the appropriate context surrounding selected text must be recovered, and thus the selected text needs to be marked in some manner, so that it can be subsequently located within a potentially much larger context.","PeriodicalId":293061,"journal":{"name":"Theory Pract. Object Syst.","volume":"201 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-10-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123028592","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1998-08-10DOI: 10.1002/(SICI)1096-9942(1998)4:3<135::AID-TAPO1>3.0.CO;2-R
A. Geppert, M. Berndtsson, D. Lieuwen, C. Roncancio
This paper uses the BEAST benchmark to present the first serious performance study of object-oriented active database management systems (ADBMS). BEAST stresses the performance-critical components of active systems: event detection, event composition, rule retrieval, and rule firing. Method invocation events and transactional events are taken into account. Four systems, namely ACOOD, NAOS, Ode, and SAMOS, have been tested with the benchmark tests of BEAST. The performance measurements demonstrate achievements in the area of active database technology, but also indicate tradeoffs (e.g. between performance and functionality). Finally, the benchmark identifies optimizations and provides hints to ADBMS desigers about producing systems with adequate performance and functionality --- as well as some open issues.
{"title":"Performance Evaluation of Object-Oriented Active Database Systems Using the BEAST Benchmark","authors":"A. Geppert, M. Berndtsson, D. Lieuwen, C. Roncancio","doi":"10.1002/(SICI)1096-9942(1998)4:3<135::AID-TAPO1>3.0.CO;2-R","DOIUrl":"https://doi.org/10.1002/(SICI)1096-9942(1998)4:3<135::AID-TAPO1>3.0.CO;2-R","url":null,"abstract":"This paper uses the BEAST benchmark to present the first serious performance study of object-oriented active database management systems (ADBMS). BEAST stresses the performance-critical components of active systems: event detection, event composition, rule retrieval, and rule firing. Method invocation events and transactional events are taken into account. Four systems, namely ACOOD, NAOS, Ode, and SAMOS, have been tested with the benchmark tests of BEAST. The performance measurements demonstrate achievements in the area of active database technology, but also indicate tradeoffs (e.g. between performance and functionality). Finally, the benchmark identifies optimizations and provides hints to ADBMS desigers about producing systems with adequate performance and functionality --- as well as some open issues.","PeriodicalId":293061,"journal":{"name":"Theory Pract. Object Syst.","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1998-08-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114830286","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}