Results 1 -
6 of
6
Continuation-Based Multiprocessing
, 1980
"... . Any multiprocessing facility must include three features: elementary exclusion, data protection, and process saving. While elementary exclusion must rest on some hardware facility (e.g., a test-and-set instruction), the other two requirements are fulfilled by features already present in applicativ ..."
Abstract
-
Cited by 69 (0 self)
- Add to MetaCart
. Any multiprocessing facility must include three features: elementary exclusion, data protection, and process saving. While elementary exclusion must rest on some hardware facility (e.g., a test-and-set instruction), the other two requirements are fulfilled by features already present in applicative languages. Data protection may be obtained through the use of procedures (closures or funargs), and process saving may be obtained through the use of the catch operator. The use of catch, in particular, allows an elegant treatment of process saving. We demonstrate these techniques by writing the kernel and some modules for a multiprocessing system. The kernel is very small. Many functions which one would normally expect to find inside the kernel are completely decentralized. We consider the implementation of other schedulers, interrupts, and the implications of these ideas for language design. 1. Introduction In the past few years, researchers have made progress in understanding the mecha...
The Paradigms of Programming
- Communications of the ACM
, 1979
"... tee) cited Professor Floyd for "helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verification, automatic program synthesis, and analysis of algo-rithms." Professor Floyd, who received bo ..."
Abstract
-
Cited by 24 (0 self)
- Add to MetaCart
tee) cited Professor Floyd for "helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verification, automatic program synthesis, and analysis of algo-rithms." Professor Floyd, who received both his A.B. and B.S. from the University of Chicago in 1953 and 1958, respectively, is a self-taught computer scientist. His study of computing began in 1956, when as a night-operator for an IBM 650, he found the time to learn about programming between loads of card hoppers. Floyd implemented one of the first Algol 60 compilers, finishing his work on this project in 1962. In the process, he did some early work on compiler optimization. Subsequently, in the
Computational work and time on finite machines
- JOURNAL OF THE ACM
, 1972
"... Measures of the computational work and computational delay required by ms chines to compute functions are given. Exchange inequalities are developed for random access tape, and drum machines to show that product inequalities between storage and time, numbe of drum tracks and time, number of bits in ..."
Abstract
-
Cited by 20 (0 self)
- Add to MetaCart
Measures of the computational work and computational delay required by ms chines to compute functions are given. Exchange inequalities are developed for random access tape, and drum machines to show that product inequalities between storage and time, numbe of drum tracks and time, number of bits in an address and time, etc., must be satisfied to compute finite functions on bounded machines.
Knowledge Mobility: Semantics for the Web as a White Knight for Knowledge-Based Systems
, 2001
"... this article, I argue that the interoperation challenge will not be met with current approaches, since they entail trapping knowledge into formal representations that are seldom shareable and often hard to translate, seriously impairing its mobility. I propose an approach to develop knowledge base ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
this article, I argue that the interoperation challenge will not be met with current approaches, since they entail trapping knowledge into formal representations that are seldom shareable and often hard to translate, seriously impairing its mobility. I propose an approach to develop knowledge bases that captures at different levels of formality and specificity how each piece of knowledge in the system was derived from original sources, which are often Web sources. If a knowledge base contains a trace of information about how each piece of knowledge was defined, it will be possible to develop interoperation tools that take advantage of this information. The contents of knowledge bases will be more mobile and no longer be confined within a formalism. The Semantic Web will provide an ideal framework for developing knowledge bases in this fashion. We are investigating these issues in the context of TRELLIS, an interactive tool to elicit from users the rationale for choices and decisions as they analyze information that may be complementary or contradictory. Starting from raw information sources, most of them originating on the Web, users are able to specify connections between selected portions of those sources. These connections are initially very high level and informal, and our ultimate goal is to develop a system that will help users to formalize them further
Logo Programming and Problem Solving
, 1983
"... In the world of educational computing, programming is a major activ-ity, occupying several million precollege students a year in this country alone. As yet very little is known about what kinds of cognitive activities computer programming requires and whether, in the classroom contexts that are repr ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
In the world of educational computing, programming is a major activ-ity, occupying several million precollege students a year in this country alone. As yet very little is known about what kinds of cognitive activities computer programming requires and whether, in the classroom contexts that are representative of microcomputer use in schools today, children are capable of making substantial progress in learning to program. In the cyclical program-development process of problem understanding, program design and planning, programming code composition, debugging, and comprehension, what gains do children make on the many developmental fronts represented in the complex of mental activities required by programming? Do conceptual limitations impede their understanding of any of the central program-ming concepts, such as flow of control structures, variables, proce-durality, and the like? We have begun to address aspects of these questions in our developmental research on children learning to do Logo programming. I would like to make five points which will be explicated in the re-mainder of 'this paper: 1. Systematic developmental research documenting what children are learning as they learn to program is necessary, rather than existing anecdotes. Our studies focus on Logo because it is a pro-gramming environment that is exciting to many educators, it has great potential for introducing children to many of the central concepts involved in programming and problem solving, and because grand

