Results 21  30
of
73
Programming Autonomous Robots in Curry
, 2002
"... In this paper we present a framework to program autonomous robots in the declarative multiparadigm language Curry. This is an experiment to use highlevel declarative programming languages for the programming of embedded systems. Our programming model is based on a recent proposal to integrate a pr ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
In this paper we present a framework to program autonomous robots in the declarative multiparadigm language Curry. This is an experiment to use highlevel declarative programming languages for the programming of embedded systems. Our programming model is based on a recent proposal to integrate a processoriented specification language in Curry. We show the basic ideas of our framework and demonstrate its application to robot programming.
RegisterMachine based Processes
, 2001
"... We study extensions of the process algebra axiom system ACP with two recursive operations: the binary Kleene star ∗, which is defined by x ∗ y = x(x ∗y) + y, and the pushdown operation $, defined by x $ y = x((x $ y)(x $ y)) + y. In this setting it is easy to represent register machine computation ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
We study extensions of the process algebra axiom system ACP with two recursive operations: the binary Kleene star ∗, which is defined by x ∗ y = x(x ∗y) + y, and the pushdown operation $, defined by x $ y = x((x $ y)(x $ y)) + y. In this setting it is easy to represent register machine computation, and an equational theory results that is not decidable. In order to increase the expressive power, abstraction is then added: with rooted branching bisimulation equivalence each computable process can be expressed, and with rooted τbisimilarity each semicomputable process that initially is finitely branching can be expressed. Moreover, with abstraction and a finite number of auxiliary actions these results can be obtained without binary Kleene star. Finally, we consider two alternatives for the pushdown operation. Each of these gives rise to similar results.
Modal Abstractions in µCRL
 IN PROC. OF THE ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY (AMAST’04
, 2004
"... ..."
Lifting of Operations in Modular Monadic Semantics
, 2009
"... Monads have become a fundamental tool for structuring denotational semantics and programs by abstracting a wide variety of computational features such as sideeffects, input/output, exceptions, continuations and nondeterminism. In this setting, the notion of a monad is equipped with operations that ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Monads have become a fundamental tool for structuring denotational semantics and programs by abstracting a wide variety of computational features such as sideeffects, input/output, exceptions, continuations and nondeterminism. In this setting, the notion of a monad is equipped with operations that allow programmers to manipulate these computational effects. For example, a monad for sideeffects is equipped with operations for setting and reading the state, and a monad for exceptions is equipped with operations for throwing and handling exceptions. When several effects are involved, one can employ the incremental approach to modular monadic semantics, which uses monad transformers to build up the desired monad one effect at a time. However, a limitation of this approach is that the effectmanipulating operations need to be manually lifted to the resulting monad, and consequently, the lifted operations are nonuniform. Moreover, the number of liftings needed in a system grows as the product of the number of monad transformers and operations involved. This dissertation proposes a theory of uniform lifting of operations that extends the incremental approach to modular monadic semantics with a principled technique for lifting operations. Moreover the theory is generalized from monads to monoids in a monoidal category, making it possible to apply it to structures other than monads. The extended theory is taken to practice with the implementation of a new extensible monad transformer library in Haskell, and with the use of modular monadic semantics to obtain modular operational semantics. i No hay ejercicio intelectual que no sea finalmente inútil. Una doctrina es al principio una descripción verosímil del universo; giran los años y es un mero capítulo—cuando no un párrafo o un nombre—de la historia de la filosofía. There is no exercise of the intellect which is not, in the final analysis, useless. A philosophical doctrine begins as a plausible description of the universe; with the passage of the years it becomes a mere chapter—if not a paragraph or a name—in the history of philosophy.
A programming tutor for Haskell
 In Proceedings of CEFP 2011: Lecture Notes of the Central European School on Functional Programming, LNCS
, 2011
"... Abstract. In these lectures we will introduce an interactive system that supports writing simple functional programs. Using this system, students learning functional programming: – develop their programs incrementally, – receive feedback about whether or not they are on the right track, – can ask fo ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Abstract. In these lectures we will introduce an interactive system that supports writing simple functional programs. Using this system, students learning functional programming: – develop their programs incrementally, – receive feedback about whether or not they are on the right track, – can ask for a hint when they are stuck, – see how a complete program is stepwise constructed, – get suggestions about how to refactor their program. The system itself is implemented as a functional program, and uses fundamental concepts such as rewriting, parsing, strategies, program transformations and higherorder combinators such as the fold. We will introduce these concepts, and show how they are used in the implementation of the interactive functional programming tutor. 1
Interleaving Strategies
, 2011
"... Abstract. Rewrite strategies are used to specify how mathematical exercises are solved in interactive learning environments, and to provide feedback to students solving such exercises. We have developed a generic strategy language with which we can specify rewrite strategies in many (mathematical) d ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Abstract. Rewrite strategies are used to specify how mathematical exercises are solved in interactive learning environments, and to provide feedback to students solving such exercises. We have developed a generic strategy language with which we can specify rewrite strategies in many (mathematical) domains. Although our strategy language is quite powerful, it lacks an essential component for specifying strategies, namely the interleaving of two strategies. Often students have to perform multiple subtasks, but the order in which these tasks are performed is irrelevant, and steps of solutions may be interleaved. We show the need for combinators that support interleaving by means of several examples. We extend our strategy language with different combinators for interleaving, define the semantics of the extension, and show how the interleaving combinators are implemented in the parsing framework we use for recognizing student behavior and providing hints.
Data anonymity in the FOO voting scheme
 In Proceedings VODCA’06, ENTCS
, 2006
"... We study one of the many aspects of privacy, which is referred to as data anonymity, in a formal context. Data anonymity expresses whether some piece of observed data, such as a vote, can be attributed to a user, in this case a voter. We validate the formal treatment of data anonymity by analyzing a ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
We study one of the many aspects of privacy, which is referred to as data anonymity, in a formal context. Data anonymity expresses whether some piece of observed data, such as a vote, can be attributed to a user, in this case a voter. We validate the formal treatment of data anonymity by analyzing a wellknown electronic voting protocol.
Equational reasoning on ad hoc networks
 In Proceedings of the Third International Conference on Fundamentals of Software Engineering (FSEN
, 2009
"... Abstract. We provide an equational theory for Restricted Broadcast Process Theory to reason about ad hoc networks. We exploit an extended algebra called Computed Network Theory to axiomatize restricted broadcast. It allows one to define an ad hoc network with respect to the underlying topologies. We ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
Abstract. We provide an equational theory for Restricted Broadcast Process Theory to reason about ad hoc networks. We exploit an extended algebra called Computed Network Theory to axiomatize restricted broadcast. It allows one to define an ad hoc network with respect to the underlying topologies. We give a sound and complete axiomatization for the recursionfree part of the term algebra CNT, modulo what we call rooted branching computed network bisimilarity. 1
Formalizing SANE Virtual Processor in thread algebra ⋆
"... Abstract. The SANE Virtual Processor (SVP) is a finegrain, threadbased model of concurrent program composition developed and used at the University of Amsterdam as a basis for designing and programming manycore chips. Its design goal was to support dynamic concurrency and hence support selfadapti ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Abstract. The SANE Virtual Processor (SVP) is a finegrain, threadbased model of concurrent program composition developed and used at the University of Amsterdam as a basis for designing and programming manycore chips. Its design goal was to support dynamic concurrency and hence support selfadaptive systems within the AETHER collaborative European project. It provides an effective solution for programming chip multiprocessor systems [11, 12, 17]. In this paper, we take thread algebra [10], a semantics for recent objectoriented programming languages such as C # and Java, as a theoretical framework to the verification and evaluation of SVP. We show how a SVP program behavior can be determined in TAsvp, an extension of thread algebra with the features of SVP, and prove that SVP programs satisfy the determinism property, i.e. the programs always give the same result, a key property of the sequential paradigm that SVP will replace.
Thread algebra for SANE virtual processors. Available at http://staff.science.uva.nl/ ∼ jesshope
"... Abstract. This paper presents a formal approach to the verification and evaluation of a programming/machine model being developed at the University of Amsterdam, called the SANE Virtual Processor (SVP). The model is being used as a basis for designing and programming chip multiprocessors and to supp ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Abstract. This paper presents a formal approach to the verification and evaluation of a programming/machine model being developed at the University of Amsterdam, called the SANE Virtual Processor (SVP). The model is being used as a basis for designing and programming chip multiprocessors and to support selfadaptive computation. This model can provide solutions for effectively programming distributed multiprocessor systems [12, 13, 17]. We take thread algebra [11], a semantics for recent objectoriented programming languages such as C # and Java, as a theoretical framework of our approach. We model the basic interleaving strategies used in SVP, and show in thread algebra that the SVP programs has a desired property, i.e. they are communicationdeadlock free. 1