Capsules provide an algebraic representation of the state of a computation in higher-order functional and imperative languages. A capsule is essentially a finite coalgebraic representation of a regular closed lambda-c...
详细信息
ISBN:
(数字)9783642316234
ISBN:
(纸本)9783642316234;9783642316227
Capsules provide an algebraic representation of the state of a computation in higher-order functional and imperative languages. A capsule is essentially a finite coalgebraic representation of a regular closed lambda-coterm. One can give an operational semantics based on capsules for a higher-order programming language with functional and imperative features, including mutable bindings. Static (lexical) scoping is captured purely algebraically without stacks, heaps, or closures. All operations of interest are typable with simple types, yet the language is Turing complete. Recursive functions are represented directly as capsules without the need for fixpoint combinators.
The research on paradigms in audio and music programming is an ongoing endeavor. However, although new audio programming paradigms have been created, already established paradigms did prevail and dominate major music ...
详细信息
ISBN:
(纸本)9781450366090
The research on paradigms in audio and music programming is an ongoing endeavor. However, although new audio programming paradigms have been created, already established paradigms did prevail and dominate major music production systems. Our research aims at the question, how programming paradigms and music production interacts. We describe the implementation process of an imperative algorithm calculating the greatest common divisor (gcd) in Pure Data and exemplify common problems of transformational processes between an imperative paradigm and a patch-paradigm. Having a closer look at related problems in research on programming paradigms in general, we raise the question of how constraints and boundaries of paradigms play a role in the design process of a program. With the deliberation on selected papers within the context of computer science, we give insight into different views of how the process of programming can be thought and how certain domains of application demand a specific paradigm.
It has been argued that computational thinking should precede computer programming in the course of a career in computing. This argument is the basis for the slogan "logic first, syntax later" and the develo...
详细信息
ISBN:
(纸本)9781450359337
It has been argued that computational thinking should precede computer programming in the course of a career in computing. This argument is the basis for the slogan "logic first, syntax later" and the development of many cryptic syntax removed programming languages such as Scratch!, Blockly and Visual Logic. The goal is to focus on the structuring of the semantic relationships among the logical building blocks to yield solutions to computational problems. In this paper, we introduce a new programming platform, called the CodeMapper, in which learners are able to build computational logic in independent modules and aggregate them to create complex modules. CodeMapper is an abstract development environment in which rapid visual prototyping of systems is possible by combining already developed independent modules in logical steps.
Flexible programming languages with built-in bounds on time or space resources are of obvious practical interest. Since we know that no programming language can capture exactly the PTime (or PSpace) algorithms, the ch...
详细信息
ISBN:
(纸本)9783030888534;9783030888527
Flexible programming languages with built-in bounds on time or space resources are of obvious practical interest. Since we know that no programming language can capture exactly the PTime (or PSpace) algorithms, the challenge is to design languages that guarantee PTime while accommodating a broad spectrum of algorithmic methods. We propose here such languages for PTime and PSpace, based on size-sensitive imperative programming, parameterless procedures, and a retooling of the ramification method.
作者:
Sofge, Donald A.USN
Res Lab Navy Ctr Appl Res Artificial Intelligence Washington DC 20375 USA
Quantum computer programming is emerging as a new subject domain from multidisciplinary research in quantum computing, computer science, mathematics (especially quantum logic, lambda calculi, and linear logic), and en...
详细信息
ISBN:
(纸本)9781424442287
Quantum computer programming is emerging as a new subject domain from multidisciplinary research in quantum computing, computer science, mathematics (especially quantum logic, lambda calculi, and linear logic), and engineering attempts to build the first non-trivial quantum computer. This paper briefly surveys the history, methods, and proposed tools for programming quantum computers circa late 2007. It is intended to provide an extensive but non-exhaustive look at work leading up to the current state-of-the-art in quantum computer programming. Further, it is an attempt to analyze the needed programming tools for quantum programmers, to use this analysis to predict the direction in which the field is moving, and to make recommendations for further development of quantum programming language tools.
We illustrate a proof in a theorem proving system can be used not only to show the correctness of a given proposition but also as a calculator to perform symbolic calculation by giving out two case studies under Isabe...
详细信息
ISBN:
(纸本)9781467344975
We illustrate a proof in a theorem proving system can be used not only to show the correctness of a given proposition but also as a calculator to perform symbolic calculation by giving out two case studies under Isabelle/HOL. Through simulating an imperative language, we show this method can be used to realizing various algorithms. Tactics which are designed to construct such proofs can be used to realize automatic theorem proving and fill the gap between the proof in textbook mathematic text and that in a theorem proving system.
Teaching beginners predicate transformer semantics for imperative languages is not a trivial task. For Computer Science majors, the teaching of the theoretical material must be supported by suitable practical course w...
详细信息
ISBN:
(纸本)9781595938763
Teaching beginners predicate transformer semantics for imperative languages is not a trivial task. For Computer Science majors, the teaching of the theoretical material must be supported by suitable practical course work. For this, we need a suitable language with appropriate tool Support. In this paper, we describe our experience of using SPARK and its tools for this purpose. Our experience has been a very positive one.
Self-adjusting computation enables writing programs that can automatically and efficiently respond to changes to their data (e.g., inputs). The idea behind the approach is to store all data that can change over time i...
详细信息
The widespread adoption of XML has led to programming languages that support XML as a first class construct. In this paper, we present a method for analyzing and optimizing imperative XML processing programs. In parti...
详细信息
ISBN:
(纸本)9783540759867
The widespread adoption of XML has led to programming languages that support XML as a first class construct. In this paper, we present a method for analyzing and optimizing imperative XML processing programs. In particular, we present a program analysis, based on a flow-sensitive type system, for detecting both redundant computations and redundant traversals in such programs. The analysis handles imperative loops that traverse XML values explicitly and declarative queries over XML data in a uniform framework. We describe two optimizations that take advantage of our analysis: one merges queries that traverse the same set of XML nodes, and the other replaces an XPath expression by a previously computed result. We demonstrate performance improvements for selected XMark benchmark queries and XLinq sample queries. (C) 2009 Elsevier B.V. All rights reserved.
We decided to support active learning on a beginner's course on Reasoning about imperative Programs because our students find the material challenging. Because of the large class size and resource implications, we...
详细信息
ISBN:
(纸本)9781595933614
We decided to support active learning on a beginner's course on Reasoning about imperative Programs because our students find the material challenging. Because of the large class size and resource implications, we opted for a simple approach: the modified lecture format. We devised active learning sheets for use during lectures. Each sheet consisted of short questions which covered the main points of the lecture. Students had to answer the questions during the lectures as they listened. In this paper we describe how we designed the active learning sheets for this particular course, and the students' (positive) response to them.
暂无评论