An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters software reuse, because programmers can concentrate on specifying how to process the ...
详细信息
ISBN:
(纸本)354067263X
An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters software reuse, because programmers can concentrate on specifying how to process the objects which are essential to their application. The compiler of an adaptive program takes care of actually locating the objects. The adaptive programmer merely writes a traversal specification decorated with actions. The compiler instantiates the specification with the actual class structure and generates code that traverses a collection of objects, performing visits and actions according to the specification. Earlier work on adaptive programming merely stated but never verified that compilation of adaptive programs is nothing but partial evaluation. We employ an algebraic framework based on derivatives of traversal specifications to develop an interpretive semantics of adaptive programming. This semantics is naturally staged in up to three stages. Compilation can be achieved using a standard partial evaluator. Slight changes in the binding-time properties yield several variants of the compiler, by trading compile-time computations for run-time computations.
In distributed environments, location control of objects among hosts is a crucial concern. This paper proposes a new mechanism of object location control using meta-level programming which provides the following advan...
详细信息
The proceedings contain 22 papers. The special focus in this conference is on Foundations and Concepts. The topics include: Benefits, models, and mechanisms;protection in programming-language translations;reflective a...
ISBN:
(纸本)9783540661306
The proceedings contain 22 papers. The special focus in this conference is on Foundations and Concepts. The topics include: Benefits, models, and mechanisms;protection in programming-language translations;reflective authorization systems;abstractions for mobile computations;type-safe execution of mobile agents in anonymous networks;types as specifications of access policies;security properties of typed applets;the role of trust management in distributed systems security;distributed access-rights management with delegation certificates;a view-based access control model for CORBA;apoptosis — the programmed death of distributed services;a sanctuary for mobile agents;mutual protection of co-operating agents;access control in configurable systems;providing policy-neutral and transparent access control in extensible systems;transparently interposing user code at the system interface;a capability-based operating system for java;secure network objects;history-based access control for mobile code;security in active networks;using interfaces to specify access rights and introducing trusted third parties to the mobile agent paradigm.
In recent years, multiple vulnerabilities exploiting the serialisation APIs of various programming languages, including Java, have been discovered. These vulnerabilities can be used to devise injection attacks, exploi...
详细信息
ISBN:
(纸本)9783959770354
In recent years, multiple vulnerabilities exploiting the serialisation APIs of various programming languages, including Java, have been discovered. These vulnerabilities can be used to devise injection attacks, exploiting the presence of dynamic programming language features like reflection or dynamic proxies. In this paper, we investigate a new type of serialisation-related vulnerabilities for Java that exploit the topology of object graphs constructed from classes of the standard library in a way that deserialisation leads to resource exhaustion, facilitating denial of service attacks. We analyse three such vulnerabilities that can be exploited to exhaust stack memory, heap memory and CPU time. We discuss the language and library design features that enable these vulnerabilities, and investigate whether these vulnerabilities can be ported to C#, Java- Script and Ruby. We present two case studies that demonstrate how the vulnerabilities can be used in attacks on two widely used servers, Jenkins deployed on Tomcat and JBoss. Finally, we propose a mitigation strategy based on contract injection.
Integrity maintenance in object-oriented systems has so far received little attention. This paper is an attempt to fill this gap. It describes a mechanism for maintaining integrity in an object- oriented database, imp...
详细信息
Class-based languages have often been criticised for their rigidity. Prototype-based languages on the other hand are usually considered too flexible. We claim that this flexibility is inherently correlated to encapsul...
详细信息
SCOOP is an experimental language implemented in Prolog that tries to combine the best of logic, object-oriented and concurrent programming in a structured, natural and efficient manner. SCOOP provides hierarchies of ...
详细信息
In this paper, we present a temporal, object-oriented algebra which serves as a formal basis for the query language of a temporal, object-oriented data model. Our algebra is a superset of the relational algebra in tha...
详细信息
Although one of the main promises of aspect-oriented (AO) programming techniques is to promote better software changeability than object-oriented (OO) techniques, there is no empirical evidence on their efficacy to pr...
详细信息
The challenge facing the International Organization for Standardization (ISO) in the early eighties, in developing Open Systems Interconnection (OSI) protocol standards for network management, was to ensure that such ...
详细信息
暂无评论