About: General-purpose programming language is a research topic. Over the lifetime, 157 publications have been published within this topic receiving 4620 citations.
TL;DR: The currently operational (March 1976) version of the INGRES database management system is described in this article, which gives a relational view of data, supports two high level nonprocedural data sublanguages, and runs as a collection of user processes on top of the UNIX operating system for Digital Equipment Corporation PDP 11/40, 11/45, and 11/70 computers.
Abstract: The currently operational (March 1976) version of the INGRES database management system is described. This multiuser system gives a relational view of data, supports two high level nonprocedural data sublanguages, and runs as a collection of user processes on top of the UNIX operating system for Digital Equipment Corporation PDP 11/40, 11/45, and 11/70 computers. Emphasis is on the design decisions and tradeoffs related to (1) structuring the system into processes, (2) embedding one command language in a general purpose programming language, (3) the algorithms implemented to process interactions, (4) the access methods implemented, (5) the concurrency and recovery control currently provided, and (6) the data structures used for system catalogs and the role of the database administrator.Also discussed are (1) support for integrity constraints (which is only partly operational), (2) the not yet supported features concerning views and protection, and (3) future plans concerning the system.
TL;DR: It is argued that the threat posed by return-oriented programming, across all architectures and systems, has negative implications for an entire class of security mechanisms: those that seek to prevent malicious computation by preventing the execution of malicious code.
Abstract: This paper reconsiders the threat posed by Shacham's "return-oriented programming" -- a technique by which W-xor-X-style hardware protections are evaded via carefully crafted stack frames that divert control flow into the middle of existing variable-length x86 instructions -- creating short new instructions streams that then return. We believe this attack is both more general and a greater threat than the author appreciated. In fact, the vulnerability is not limited to the x86 architecture or any particular operating system, is readily exploitable, and bypasses an entire category of malware protections. In this paper we demonstrate general return-oriented programming on the SPARC, a fixed instruction length RISC architecture with structured control flow. We construct a Turing-complete library of code gadgets using snippets of the Solaris libc, a general purpose programming language, and a compiler for constructing return-oriented exploits. Finally, we argue that the threat posed by return-oriented programming, across all architectures and systems, has negative implications for an entire class of security mechanisms: those that seek to prevent malicious computation by preventing the execution of malicious code.
TL;DR: This paper describes the implementation of Idris, a new dependently typed functional programming language, and presents a tactic-based method for elaborating concrete high-level syntax with implicit arguments and type classes into a fully explicit type theory.
Abstract: Many components of a dependently-typed programming language are by now well understood, for example the underlying type theory, type checking, unification and evaluation. How to combine these components into a realistic and usable high-level language is, however, folklore, discovered anew by successive language implementators. In this paper, I describe the implementation of IDRIS, a new dependently-typed functional programming language. IDRIS is intended to be a general purpose programming language and as such provides high-level concepts such as implicit syntax, type classes and do notation. I describe the high-level language and the underlying type theory, and present a tactic-based method for elaborating concrete high-level syntax with implicit arguments and type classes into a fully explicit type theory. Furthermore, I show how this method facilitates the implementation of new high-level language constructs.
TL;DR: This handbook is a practical, easy- to-follow reference that provides up-to-date knowledge and offers step-by-step procedures for conducting simulation studies that help decision-makers find the optimal courses of action.
Abstract: From the Publisher:
Simulation modeling is becoming increasingly popular as a technique for evaluating the performance of resource allocation and alternate operating policies. It is a cost-effective method for improving process performance and can be used to evaluate the performance of capital equipment before making an investment. This handbook is a practical, easy-to-follow reference that provides up-to-date knowledge and offers step-by-step procedures for conducting simulation studies that help decision-makers find the optimal courses of action. Unlike most other books on the subject, this presentation is independent of any particular simulation software, allowing readers to use any commercial package or general purpose programming language.
TL;DR: The meaning of the term 'object oriented' is examined in the context of the general-purpose programming language C++ and four paradigms are examined: procedural, data hiding, data abstraction, and object-oriented programming.
Abstract: The meaning of the term 'object oriented' is examined in the context of the general-purpose programming language C++. This choice is made partly to introduce C++ and partly because C++ is one of the few languages that supports data abstraction, object-oriented programming, and traditional programming techniques. The support of programming paradigms by languages is discussed and four paradigms are examined: procedural, data hiding, data abstraction, and object-oriented programming. The support of the latter two by C++ is discussed in some detail. >