Results 1 -
4 of
4
On the Expressive Power of Programming Languages
- Science of Computer Programming
, 1990
"... The literature on programming languages contains an abundance of informal claims on the relative expressive power of programming languages, but there is no framework for formalizing such statements nor for deriving interesting consequences. As a first step in this direction, we develop a formal noti ..."
Abstract
-
Cited by 116 (4 self)
- Add to MetaCart
The literature on programming languages contains an abundance of informal claims on the relative expressive power of programming languages, but there is no framework for formalizing such statements nor for deriving interesting consequences. As a first step in this direction, we develop a formal notion of expressiveness and investigate its properties. To validate the theory, we analyze some widely held beliefs about the expressive power of several extensions of functional languages. Based on these results, we believe that our system correctly captures many of the informal ideas on expressiveness, and that it constitutes a foundation for further research in this direction. 1 Comparing Programming Languages The literature on programming languages contains an abundance of informal claims on the expressive power of programming languages. Arguments in these contexts typically assert the expressibility or non-expressibility of programming constructs relative to a language. Unfortunately, pro...
A Study of Semantics, Types, and Languages for Databases and Object Oriented Programming
, 1989
"... The purpose of this thesis is to investigate a type system for databases and object-oriented programming and to design a statically typed programming language for these applications. Such a language should ideally have a static type system that supports: • polymorphism and static type inference, • r ..."
Abstract
-
Cited by 8 (0 self)
- Add to MetaCart
The purpose of this thesis is to investigate a type system for databases and object-oriented programming and to design a statically typed programming language for these applications. Such a language should ideally have a static type system that supports: • polymorphism and static type inference, • rich data structures and operations to represent various data models for databases including the relational model and more recent complex object models, • central features of object-oriented programming including user definable class hierarchies, multiple inheritance, and data abstraction, • the notion of extents and object-identities for object-oriented databases. Without a proper formalism, it is not obvious that the construction of such a type system is possible. This thesis attempts to construct one such formalism and proposes a programming language that uniformly integrate all of the above features. The specific contributions of this thesis include: • A simple semantics for ML polymorphism and axiomatization of the equational theory of ML. • A uniform generalization of the relational model to arbitrary complex database objects that
Semantics and Applications of Constrained Objects
, 2001
"... tion of bars incident at the joint. constraints sum b in B: b.f bn * sin(b.angle) = 0. % Law of equilibrium of forces along the sum b in B: b.f bn * cos(b.angle) = 0. % x- and y-dimensions. constructor Joint(B1) f B = B1 g g class Bar f attributes 1 This research was partially supported by ..."
Abstract
- Add to MetaCart
tion of bars incident at the joint. constraints sum b in B: b.f bn * sin(b.angle) = 0. % Law of equilibrium of forces along the sum b in B: b.f bn * cos(b.angle) = 0. % x- and y-dimensions. constructor Joint(B1) f B = B1 g g class Bar f attributes 1 This research was partially supported by grants from the National Science Foundation and the Xerox Foundation. 1 Real angle, E, Sy, l, w, h, f bn, f bk, f t, , I constraints 0 angle. angle 2*. I = f bk * l 2 /( 2 *E). I w * h 3 / 12. f t = Sy * w * h. = h * l * f bn / (8 * I) constructor Bar(C,S1,l1,w1,h1,a,f1,f2) f E = S1*C, l=l1, h=h1, w=w1, angle=a, f bk=f1, f bn=f2 g g The above code illustrates the Cob programming language. The Joint

