Data mining on software products and process metrics is hard. The relations between them are different and may vary. We present a data manipulation language called System Query Language, which partially overcomes the ...
详细信息
Data mining on software products and process metrics is hard. The relations between them are different and may vary. We present a data manipulation language called System Query Language, which partially overcomes the problems of other similar languages and allows the user to retrieve the needed information.
object-orientedprogramming and other programming paradigms are heavily influenced by Western thought and reasoning, which focuses on understanding the world in terms of categories, objects and their attributes: A typ...
详细信息
object-orientedprogramming and other programming paradigms are heavily influenced by Western thought and reasoning, which focuses on understanding the world in terms of categories, objects and their attributes: A typical program is decomposed into clearly defined units, such as modules, functions, objects, components and aspects, and each of these units is described by its properties, functionality, and direct relationships to other units. Eastern philosophy, however, focuses on fields of interactions rather than individual units. Harmony-orientedprogramming is a new programming paradigm based on concepts found in Eastern philosophy. This paper presents principles and constructs of harmony-orientedprogramming and introduces ongoing work towards creating a harmony-oriented software development environment for further experimental studies.
We propose a semi-automated approach to statically extract a runtime architecture of an object-oriented system using ownership domain annotations and check its structural conformance with an as-designed architecture. ...
详细信息
We propose a semi-automated approach to statically extract a runtime architecture of an object-oriented system using ownership domain annotations and check its structural conformance with an as-designed architecture. In contrast, previous work used dynamic analyses that cover some but not all possible executions, or used radical language extensions or implementation restrictions. The approach also extracts an architecture that is hierarchical and sound, i.e., one that accounts for all objects and relations that could possibly exist at runtime.
Major challenges of dynamic analysis approaches to specification mining include scalability over long traces as well as comprehensibility and expressivity of results. We present a novel use of object hierarchies over ...
详细信息
Major challenges of dynamic analysis approaches to specification mining include scalability over long traces as well as comprehensibility and expressivity of results. We present a novel use of object hierarchies over inter-object traces as an abstraction/refinement mechanism enabling scalable, incremental, top-down mining of scenario-based specifications.
WebDSL is a domain-specific language for the implementation of dynamic web applications with a rich data model. It consists of a core language with constructs to define entities, pages and business logic. Higher-level...
详细信息
WebDSL is a domain-specific language for the implementation of dynamic web applications with a rich data model. It consists of a core language with constructs to define entities, pages and business logic. Higher-level abstractions, modeling access control and workflow, are defined in a modular fashion as extensions of the core language.
Ownership domain annotations specify in code architectural intent related to object encapsulation and communication. These annotations also enable the static extraction of a sound hierarchical representation of the ru...
详细信息
Ownership domain annotations specify in code architectural intent related to object encapsulation and communication. These annotations also enable the static extraction of a sound hierarchical representation of the runtime object graph. The tool support consists of one Eclipse plugin to typecheck the annotations inserted as Java 1.5 annotations, and another to extract a representation of the runtime object graph abstracted by ownership hierarchy and by types.
In October 1958, John McCarthy published one in a series of reports about his then ongoing effort for designing a new programming language that would be especially suited for achieving artificial intelligence. That re...
详细信息
In October 1958, John McCarthy published one in a series of reports about his then ongoing effort for designing a new programming language that would be especially suited for achieving artificial intelligence. That report was the first one to use the name LISP for this new programming language. 50 years later, Lisp is still in use. We would like to celebrate Lisp's 50th birthday. oopsla 2008 is an excellent venue for such a celebration, because object-orientedprogramming benefitted heavily from Lisp ideas and because oopsla 2008 takes place in October, exactly 50 years after the name Lisp has been used publicly for the first time. We will have talks by John McCarthy himself, and numerous other influential Lispers from the past five decades. We will also take a look at the next 50 years of Lisp.
Domain-Specific Modeling raises the level of abstraction beyond programming by specifying the solution directly using visual models to express domain concepts. In many cases, final products can be generated automatica...
详细信息
Domain-Specific Modeling raises the level of abstraction beyond programming by specifying the solution directly using visual models to express domain concepts. In many cases, final products can be generated automatically from these high-level specifications. This automation is possible because both the language and generators fit the requirements of only one domain. This paper introduces Domain-Specific Modeling and describes the related 2-day workshop (19th and 20th October).
Immutability information is useful in many software engineering tasks, such as modeling, verification, optimization, and refactoring. Furthermore, undesired mutation or sideeffect are hard to detect and debug. This pa...
详细信息
Immutability information is useful in many software engineering tasks, such as modeling, verification, optimization, and refactoring. Furthermore, undesired mutation or sideeffect are hard to detect and debug. This paper describes a javac plug-in that enables programmers to write immutability annotations in a Java program to detect and prevent bugs The IGJ annotations are rich and flexible;the tools are scalable;case studies show they are effective and easy to use;and the annotated program remains compilable with a standard compiler.
暂无评论