Nowadays, the main advances in computational power are due to parallelism. However, most parallel languages have been designed with a focus on processors and threads. This makes dealing with data and memory in program...
详细信息
ISBN:
(数字)9783031479632
ISBN:
(纸本)9783031479625;9783031479632
Nowadays, the main advances in computational power are due to parallelism. However, most parallel languages have been designed with a focus on processors and threads. This makes dealing with data and memory in programs hard, which distances the implementation from its original algorithm. We propose a new paradigm for parallel programming, the data-autonomous paradigm, where computation is performed by autonomous data elements. Programs in this paradigm are focused on making the data collaborate in a highly parallel fashion. We furthermore present AuDaLa, the first data autonomous programming language, and include an operational semantics. programming in AuDaLa is very natural, as illustrated by examples, albeit in a style very different from sequential and contemporary parallel programming.
The formal verification of control structure implementation techniques is a subject receiving increased attention among programming language researchers. Such correctness arguments relate source language control seman...
详细信息
The formal verification of control structure implementation techniques is a subject receiving increased attention among programming language researchers. Such correctness arguments relate source language control semantics to corresponding implementation effects. Most commonly, it is demonstrated that a particular implementation strategy α is “safe” is some source language control disciplineδ is observed. We term this asufficiency proof forδ with given α. In this paper, the companion issue of thenecessity ofδ is explored. That is, we consider the question of whether some more liberal disciplineδ might also be sufficient for α. The motivation is the observation that language designers often have particular control implementation strategies in minda priori, but at times over-restrict their final designs to ensure that the envisioned implementation remains applicable. The general notion of control discipline necessity proofs is illustrated by a proof that Wang and Dahl's CS condition on block-structured coroutines is necessary, given a simple scope-based deletion strategy, but that their CR condition is not necessary unless scope-based referencing constraints are taken into account.
*AIDA modeling/programming language and its environment support programming in algorithmic pictures which are used as super-characters for representing features of computational algorithms and data structures. *AIDA p...
详细信息
ISBN:
(纸本)9781509043149
*AIDA modeling/programming language and its environment support programming in algorithmic pictures which are used as super-characters for representing features of computational algorithms and data structures. *AIDA program is presented as a set of information resources oriented not only to the executable code generation, but also to the explanation of the problem, application algorithm, data features and other issues related. In general, *AIDA language and F-modeling environment are developed and promoted as a test-bed for various innovations in IT research and implementations. In this paper we consider how this test-bed can be applied for the BRASS problems of a DARPA initiative to create long-lived, survivable, and adaptive software systems.
Many learning theories have been studied and developed for the instructional design model. Among these theories, constructivist learning theory and ARCS motivation theory are most widely applied. In this paper, we sho...
详细信息
ISBN:
(纸本)9781424435197
Many learning theories have been studied and developed for the instructional design model. Among these theories, constructivist learning theory and ARCS motivation theory are most widely applied. In this paper, we show that either of these two theories alone is not perfect to instructional design model and propose the concepts: experience that is the combination point of both theories, the core of the knowledge structure and experiencing teaching strategy. We present a hybrid model of instructional design around experiencing and form an adequate framework for designing courses. Our model is further augmented by a simulation module to demonstrate how it can be utilized in learning programming language more effectively.
Nowadays, programming grid applications is still a major challenge. Several systems, tools and environments have appeared to allow end-users to describe applications without dealing with the complexity of the grid inf...
详细信息
ISBN:
(纸本)9780387784472
Nowadays, programming grid applications is still a major challenge. Several systems, tools and environments have appeared to allow end-users to describe applications without dealing with the complexity of the grid infrastructure. An application description in such environments is done through high level languages such as the Grid Concurrent language (GRICOL). Independently of the application domain, this language enables the description of highly complex scientific experiments. While such a high level language is offered to end-users, the question of how to implement it is raised. The contribution of this paper is to analyze the support of a GRICOL application within component models, in particular the support of its temporal composition represented by a control flow construction.
Data privacy is a key concern for smart contracts handling sensitive data. The existing work zkay addresses this concern by allowing developers without cryptographic expertise to enforce data privacy. However, while z...
详细信息
ISBN:
(数字)9781665413169
ISBN:
(纸本)9781665413169
Data privacy is a key concern for smart contracts handling sensitive data. The existing work zkay addresses this concern by allowing developers without cryptographic expertise to enforce data privacy. However, while zkay avoids fundamental limitations of other private smart contract systems, it cannot express key applications that involve operations on foreign data. We present ZeeStar, a language and compiler allowing non-experts to instantiate private smart contracts and supporting operations on foreign data. The ZeeStar language allows developers to ergonomically specify privacy constraints using zkay's privacy annotations. The ZeeStar compiler then provably realizes these constraints by combining non-interactive zero-knowledge proofs and additively homomorphic encryption. We implemented ZeeStar for the public blockchain Ethereum. We demonstrated its expressiveness by encoding 12 example contracts, including oblivious transfer and a private payment system like Zether. ZeeStar is practical: it prepares transactions for our contracts in at most 54.7 s, at an average cost of 339 k gas.
Prolog was a modern, promising and a very popular programming language thirty years ago and Logic programming acquired a firm place within Computer Science as well as in ICT programs curricula especially at European a...
详细信息
ISBN:
(纸本)9781538677117
Prolog was a modern, promising and a very popular programming language thirty years ago and Logic programming acquired a firm place within Computer Science as well as in ICT programs curricula especially at European and Asian Universities. However, the rapid development of new programming languages moved Prolog far away from the beginning of the list of the most widely utilized programming languages. Therefore the logical question is whether there are still some good and justified reasons to keep Logic programming in the present ICT specialists curricula. This paper outlines some general reasons for maintaining it on the list of the subjects taught and it brings out some basic examples showing the usefulness of the logic programming paradigm especially when explaining and teaching the efficient utilization of recursion.
We consider a simple imperative language with fork/join parallelism and lexically scoped nested atomic sections from which threads can escape. In this context, our contribution is a formal operational semantics of thi...
详细信息
ISBN:
(纸本)9781479924189
We consider a simple imperative language with fork/join parallelism and lexically scoped nested atomic sections from which threads can escape. In this context, our contribution is a formal operational semantics of this language that satisfies a specification on execution traces designed in a companion paper.
The popularity of smart contracts is on the rise, yet breaches in reliability and security linger. Among the many facets of smart contract reliability, we concentrate on faults rooted in out-of-order interactions with...
详细信息
ISBN:
(纸本)9783031324147;9783031324154
The popularity of smart contracts is on the rise, yet breaches in reliability and security linger. Among the many facets of smart contract reliability, we concentrate on faults rooted in out-of-order interactions with contract endpoints. We propose SMARTSCRIBBLE, a protocol language to describe valid patterns of interaction between users and endpoints. SMARTSCRIBBLE not only ensures correct interactive behaviour but also simplifies smart contract coding. From a protocol description, our compiler generates a smart contract that can then be completed by the programmer with the relevant business logic. The generated contracts rely on finite state machines to control endpoint invocations. As a proof of concept, we target Plutus, the contract programming language for the Cardano blockchain. Preliminary evaluation points to a 75% decrease in the size of the code that developers must write, coupled with an increase of reliability by enforcing the specified patterns of interaction.
Graphical system sequence diagrams (SSDs), used in Requirements Engineering and Analysis, are hard to draw for larger use cases. However, we wanted to be able to express SSDs for such use cases as well. While we were ...
详细信息
ISBN:
(数字)9783030523060
ISBN:
(纸本)9783030523060;9783030523053
Graphical system sequence diagrams (SSDs), used in Requirements Engineering and Analysis, are hard to draw for larger use cases. However, we wanted to be able to express SSDs for such use cases as well. While we were designing a grammar for textual SSDs, we noted that we needed the same kind of structuring mechanisms as for modeling business processes and programming languages. Only the basic building block differs: e.g., an assignment statement for (imperative) programming languages and a (basic) interaction step for SSDs. Can we generalize this similarity idea, leading to (uniform) grammars for instruction languages in general, and exploit this? This paper presents a grammar for 'structured' Ws (where W stands for 'Whatever'), leading to grammars for (textual) instruction languages. The general grammar contains constructs necessary for specifying all kinds of instructions. We illustrate our theory with examples from several different application areas. A basic building block might even be a picture or an icon, as we will point out. The main contribution of the paper is a powerful and uniform grammar for instruction languages in general, containing generic constructs for specifying various instructions conveniently. Exploiting the similarity between the structuring mechanisms for modeling business processes, (textual) SSDs, and programming languages will ease the translation towards an implementation in a software system. Usually the grammar rules for basic building blocks are domain specific and must be specified and added per application.
暂无评论