• Corpus ID: 43905814

An information theoretic approach to the expressiveness of programming languages

  title={An information theoretic approach to the expressiveness of programming languages},
  author={Joseph Davidson},
The conciseness conjecture is a longstanding notion in computer science that programming languages with more built-in operators, that is more expressive languages with larger semantics, produce smaller programs on average. Chaitin defines the related concept of an elegant program such that there is no smaller program in some language which, when run, produces the same output. This thesis investigates the conciseness conjecture in an empirical manner. Influenced by the concept of elegant… 

Are there Domain Specific Languages?

Turing complete languages can express unbounded computations over unbounded structures, either directly or by a suitable encoding. In contrast, Domain Specific Languages (DSLs) are intended to



Brute Force is not Ignorance

This paper re-introduce the Random Access Stored Program machine (RASP) and build an analogue of the BBG for these machines, and explores the space of BBG RASP machines using both brute force and genetic search methods.

On the Expressive Power of Programming Languages

A formal notion of expressiveness is developed and its properties are investigated to demonstrate the theory's closeness to published intuitions on expressiveness, and the expressive power of several extensions of functional languages is analyzed.

Assigning Meanings to Programs

This paper attempts to provide an adequate basis for formal definitions of the meanings of programs in appropriately defined programming languages, in such a way that a rigorous standard is

Time-bounded random access machines

This paper introduces a formal model for random access computers and argues that the model is a good one to use in the theory of computational complexity and shows the existence of a time complexity hierarchy which is finer than any standard abstract computer model.

Very Simple Chaitin Machines for Concrete AIT

This work presents several new tiny Chaitin machines (those with a prefix-free domain) suitable for the study of concrete algorithmic information theory, one of which is a binary encoding of lambda calculus based on a curried lambda operator.

A Formal Theory of Inductive Inference. Part II

On the Size of Machines

  • M. Blum
  • Computer Science
    Inf. Control.
  • 1967

Introduction to the Theory of Computation

Throughout the book, Sipser builds students' knowledge of conceptual tools used in computer science, the aesthetic sense they need to create elegant systems, and the ability to think through problems on their own.

Introduction to Automata Theory, Languages and Computation

Computational complexity of random access stored program machines

It is shown that there exist arbitrarily complex functions with optimal RASP programs whose running time cannot be improved by any multiplicative constant and these optimal programs cannot be fixed procedures, and the difference in computation speed between fixed procedures and self-modifying programs.