|
This page collects my personal links in the field of Programming Languages. At first, it was devoted to functional programming. Now, I am very interested in the expressiveness of programming languages in general.
With the term advanced I mean that it is oriented to researchers on programming languages .
I would like to add a personal comment to each link, but sometimes, I prefer to leave it blank than to include a meaningless comment. Of course, this page will always be under construction.
Syntax deals with the form and structure of the symbols in a language without considering their meaning.
Semantics deals with the meaning of language sentences.
Static semantics deals with the meaning of language sentences without considering the input data
Dynamic semantics takes into account the behaviour of the programs. It usually depends on the input data.
Directory of Program Transformation Systems and People involved in Transformation Research
Decompilation is the inverse of compilation
Pragmatics deals with the use of a language. In my view, programming language pragmatics refers to programming methodologies, programming techniques, design patterns, etc.
Name | Description | Developer |
---|---|---|
ABC | Interactive and imperative language for teaching purposes | L. Meertens S. Pemberton |
Ada | A standardized programming language that supports a lot of features suitable for software engineering (modularity, efficiency, abstract data types, concurrent programming, object-oriented programming, etc.) . The name comes from Ada Lovelace (1815-1852). | It was a registered trademark from the US government. Now it relies on a certification mark. All validated Ada compilers must have it. |
ADL | Algebraic Design Language | Tim Sheard |
Agora | A reflective prototype-based object-oriented programming language entirely (and solely!) based on message passing | W. De Meuter |
Bablog | A lazy higher order programming language | |
Ch | A superset of C Interpreter which can interface with C/C++ binary libraries and be embedded in other application programs. | SoftIntegration |
Charity | A nice Categorical Programming Language. It has lazy evaluation, higher-order functions and all its computations terminate! | Charity Development Group at the University of Calgary |
Cilk | A language for multithreaded parallel programming based on ANSI C. | Supercomputing Technologies group at MIT |
Clean | A lazy functional programming language with unique types | R. Plasmeijer et al. Commercial Support |
Cayenne | Lazy Functional Language with dependent types | L. Augustsson |
Dylan | Object-oriented DYnamic LANguage | Apple Computer |
Elegant | It has strong typing (with subtyping and polymorphism) and supports attribute grammars. (= Exploiting Lazy Evaluation for the Grammar Attributes of Non Terminals). Now it is available as open source software. | Philips, Lex Augusteijn |
Elephant 2000 | A Programming Language Based on Speech Acts | J. McCarthy |
Elf | Constraint Logic Programming Language based on the Logical Framework. It is a uniform meta-language for specifying, implementing, and proving properties of programming languages and logics. | Frank Pfenning |
Erlang | A non-pure functional programming language specially suited to telecommunication products. It contains a platform-independent development environment. Other page about Erlang. A new Project: High-Performance Erlang | Ericsson |
Escher | A declarative general purpose language integrating logic and functional features | John Lloyd, A. Bowers |
FISH | Array Prog. Language, Functional = Imperative + Shape | B. Jay |
FOOPS | Functional Object Oriented Programming System | J. Goguen |
Gjava | An extension of Java with Generic Types | P. Wadler M. Ordersky |
Gödel | A strongly typed logic programming language. Purely declarative | John Lloyd, A. Bowers |
Gofer | Predecessor of HUGS, a Haskell variation with some extensions to the type system. A tutorial | M. P. Jones |
Haskell | A non-strict purely functional language | International Committe |
Hugs | It was named Haskell Users Gofer System. Now it is a Haskell implementation as a interpreter | M. P. Jones. Yale University |
Hope | An early Functional language with polymorphic typing and algebraic datatypes | R. Paterson |
J | A succesor of APL | Iverson Software |
Java | A famous Object Oriented Programming Language | Sun |
Lambda Prolog | A logic programming language with higher order programming, polymorphic typing and modules | Dale Miller, Gopalan Nadathur |
LEDA | A multiparadigm programming language | T. Budd |
Life | Logic, Inheritance, Functions, and Equations | H. Ait Kaci |
LISP | LISt Processing. An historic symbolic programming language that has survived and is widely used today | Invented by John McArthy. |
Maude | A high-performance reflective language and system supporting both equational and rewriting logic specification and programming | The Maude Group. SRI International |
Mercury | Advanced Logic/functional programming language | F. Henderson. ... |
ML | A functional programming language with strict evaluation and some imperative features. | |
Mondrian | An experimental scripting programming language evolved from Haskell | E. Meijer |
OBJ | A family of programming languages based on order sorted equational logic | J. Goguen |
OCAML | A dialect of ML with Object Oriented capabilities | X. Leroy |
Oz | A concurrent object-oriented language with dataflow synchronization | |
Pict | A concurrent programming language based on the pi-calculus | B.C. Pierce, D. Turner |
Pizza | A superset of Java with parametric polimorphism, algebraic data types, etc. | P. Wadler, M. Odersky |
Pliant | A highly customisable programming language with dynamic compilation and reflexiveness | Hubert Tonneau |
P2 | Shape Polymorphism | B. Jay |
Python | An interpreted, interactive and object oriented programming language. It also has modules, classes, exceptions and dynamic typing. | Guido Van Rossum |
Rebol | Relative Expression-Based Object Language | Carl Sassenrath at Rebol Technologies |
Scheme | A small dialect of Lisp | G. L. Steele Jr. |
TCL | Tool Command Language | |
Toy | A prototype for a constraint functional logic language. |
This page was inspired by the overwhelming "Object Oriented Page" from Ricardo Devis.
I want to add a link to those pages who have a link to this page. If you have one, please, let me know.