Factbites
 Where results make sense
About us   |   Why use us?   |   Reviews   |   PR   |   Contact us  

Topic: Formal semantics of programming languages


  
  Semantics | Lambda the Ultimate
Constraint solving programs are often essentially stateful algorithms, and I see CHR as a particularly nice way of handling all that state in a declarative way.
The first one is a language that for specifying how to map low level types to high level types, and the second one is a rewriting-based language for translating API functions, which makes use of the type mapping programs you defined earlier.
Program validation and detection of errors is first performed statically by comparing (partial) specifications written in terms of assertions against information obtained from static analysis of the program.
lambda-the-ultimate.org /taxonomy/term/29   (2309 words)

  
  Formal semantics of programming languages - Wikipedia, the free encyclopedia
In theoretical computer science, formal semantics is the field concerned with the rigorous mathematical study of the meaning of programming languages and models of computation.
The formal semantics of a language is given by a mathematical model to represent the possible computations described by the language.
Game semantics was proposed as a kind of denotational semantics, but it has a dynamical aspect that allows it to be understood as a kind of operational semantics.
en.wikipedia.org /wiki/Formal_semantics   (318 words)

  
 Amazon.co.uk: The Formal Semantics of Programming Languages: An Introduction (Foundations of Computing S.): Books   (Site not responding. Last check: 2007-11-07)
Denotational and axiomatic semantics are illustrated on a simple language of while-programs, and full proofs are given of the equivalence of the operational and denotational semantics and soundness and relative completeness of the axiomatic semantics.
The simplest language is that of recursion equations with both call-by-value and call-by-name evaluation.
Throughout, the relationship between denotational and operational semantics is stressed, and the proofs of the correspondence between the operation and denotational semantics are provided.
www.amazon.co.uk /exec/obidos/ASIN/0262731037   (613 words)

  
 Formal Semantics of Programming Languages
While the syntax of a programming language is always formally specified, the equally important aspect of definining its meaning is often left to natural language which is ambiguous and leaves questions open.
A programming language is defined by reduction rules that describe how the initial state of a program is transformed step by step into the terminal state.
A programming language is defined by a valuation function that maps a program into a mathematical object which is considered as its meaning.
www.risc.uni-linz.ac.at /education/courses/ss2001/semantics   (292 words)

  
 CO3008 Semantics of Programming Languages
Syntax is the formal arrangement of symbols and words, often to create a language; and all programming languages have a particular syntax.
Semantics is the study of meaning, and in this module we shall be concerned with the meaning of programming languages.
The low level semantics works by translation of a high level language into a low level language; the simpler low level language can also be executed simply and precisely.
www.mcs.le.ac.uk /Modules/CO-03-04/CO3008.html   (794 words)

  
 Semantics of programming languages   (Site not responding. Last check: 2007-11-07)
Semantics of Programming Languages is a third year, first term course which introduces formal approaches to modelling and reasoning about programs.
Familiarity with an imperative programming language of some kind, for example the core of Java as taught in Introduction to Programming, is essential.
Operational and denotational semantics of a language of arithmetic expressions.
www.cogs.sussex.ac.uk /courses/semantics   (546 words)

  
 Course Details
Formal Semantics of Programming Languages (CSC-535-902-Spring 2004-2005) J. Riely
Formal Semantics of Programming Languages (CSC-535-901-Spring 2004-2005) J. Riely
Formal Semantics of Programming Languages (CSC-535-902-Spring 2003-2004) J. Riely
www.cs.depaul.edu /programs/courses.asp?courseid=535&deptmne=CSC   (89 words)

  
 VT04
Semantics in this context is the study of the principles and formal (mathematical) techniques for the description of programming languages.
You should have previously studied a course in programming languages (and of course basic programmming skills are assumed).
A chapter of a handbook for engineers, in which where the potential role of calculi for mobile processes as the core of high-level concurrent programming languages (in analogy to the role of lambda calculi as the core of functional programming languages) is explained.
www.cs.chalmers.se /Cs/Grundutb/Kurser/nasem   (1769 words)

  
 Advogato's Number: The Future of Programming
On the other hand, a program running as root which sits on port 1234, accumulates the text passed to it from a given connection, and calls system() on the text when the connection closes, is a reasonably well defined program, but which is a huge security hole.
The basic property of a declarative programming language is that a program is a theory in some suitable logic.
I am not an expert programmer, nor I learned programming by attending classes, so my theoretical knowledge of programming language research is almost null, but I think that an idea like the one embodied by declarative programming would be great to help reducing most of the problems that we have with the existing languages.
www.advogato.org /article/120.html   (9021 words)

  
 Semantics of Programming Languages, spring 2001   (Site not responding. Last check: 2007-11-07)
In this course we introduce the formal semantics of programming languages, and the mathematical principles underlying it.
By the end of the course, the students should understand the semantics of a simple abstract programming languages, be able to prove simple equivalences between programs using the formal semantics; and have an elementary grasp of the mathematical principles underlying semantics.
The main differences between the semantics for imperative (state-based, non-uniform), for schematic (abstract, uniform), and for functional programs is described.
www.liacs.nl /~marcello/spl.html   (412 words)

  
 Semantics of Programming Languages
While the syntax of a programming language is always formally specified, the equally important aspect of defining its meaning is often left to natural language which is ambiguous and leaves questions open.
The goal of formal semantics is to reveal the essence of a language beneath its syntactic surface.
M Hennessey, The semantics of programming languages, Prentice Hall, 1990.
www.cs.tau.ac.il /~msagiv/courses/sem03.html   (210 words)

  
 School of Informatics Teaching Modules: Formal Programming Language Semantics
A formal semantics for a programming language is a mathematically precise description of the intended meaning of each construct in the language.
In contrast to a formal syntax for a language, which tells us which sequences of symbols are correctly formed programs, a formal semantics tells us what programs will actually do when we run them.
The aim of this course is to give an introduction to various approaches to formal semantics (operational, denotational and axiomatic), illustrating them by means of some very simple imperative, functional, and object-oriented languages.
www.inf.ed.ac.uk /teaching/courses/fpls   (1187 words)

  
 CSC 530 Lecture Notes Week 4   (Site not responding. Last check: 2007-11-07)
In this sense, a formal mathematic semantics is probably more trustworthy than a compiler/interpreter written in C. The role of functional programming languages in defining formal semantics.
Program Semantics are a set of snapshots that depict the execution of the program.
Semantic actions can be used to express meaning that is computed in one or more parse tree traversals, such as interpretation, type checking, and code generation.
www.csc.calpoly.edu /~gfisher/classes/530/lectures/4.html   (1753 words)

  
 School of Informatics Course Descriptor
Explain the differences between informal and formal semantics of programming languages, and between the operational, denotational and axiomatic approaches to formal semantics.
Read a formal semantics for a small programming language written in any of the three styles, interpret it in informal terms, and predict how a given program will behave according to the semantic definition.
Write a formal semantics for a programming language in the operational style, given a careful informal description of the language, and explain how any inadequacies in the informal description have been addressed in the formal one.
www.inf.ed.ac.uk /teaching/courses/fpls.html   (468 words)

  
 Matz Kindahl - Formal Methods
In particular, the proliferation of specification languages, some differing in only quite minor ways from each other, is a considerable obstacle for the use of algebraic methods in industrial contexts, making it difficult to exploit standard examples, case studies and training material.
Action Semantics is a framework for specifying formal semantics of programming languages.
That semantics makes possible to reduce the study of the semantics of an infinite graph to parts of that graph by using correct assertions.
user.it.uu.se /~matkin/collection/formal.html   (1120 words)

  
 CIDEC Library: Slonneger, Kurtz * Formal Syntax and Semantics of Programming Languages
Language processing with Prolog is introduced in Chapter 2 by describing a scanner for Wren and parser defined in terms of Prolog logic grammars.
Two well-known operational formalisms are treated in Chapter 8: the SECD machine, an abstract machine for evaluating the lambda calculus and structural operational semantics, an operational methodology for describing the semantics of programming languages in term of logical rules of inference.
Denotational semantics, one of the most complete and useful methods of specifying a programming language, is covered in Chapter 9.
www.cs.ioc.ee /yik/lib/1/Slonneger1pre.html   (1469 words)

  
 Formal Methods
The use of logic as an aid to programming.
Formal semantics of programming languages: imperative programs, functional programs, parallel processes, communicating processes.
Semantics of recursion and the least-fixed- point construction; monotonicity, continuity.
www.cs.toronto.edu /fm/CSC2104.html   (50 words)

  
 COMP 411 Semantics of Programming Languages (Spring 2003)
These tools will be applied to a wide range of programming languages, including imperative, non-deterministic, parallel (or concurrent), as well as functional programming languages.
The final project is intended to give you hands on experience with the material taught in the course and also to allow you to explore in more depth a topic of your own interest.
Acceptable projects can be a programming project, a survey of recent research on some relevant topic, or a small research paper.
www.cs.rice.edu /~taha/teaching/03S/411   (483 words)

  
 ETH - Computer Science - Details   (Site not responding. Last check: 2007-11-07)
Furthermore semantics are important for the implementation of programming languages, for example interpreters can be automatically generated from formal semantics.
The goal of this lecture is to understand the basic techniques for the precise definition of the semantics of a programming language and to apply these techniques to problems like the equivalence of different language descriptions, program correctness, or program transformations.
Glynn Winskel: The Formal Semantics of Programming Languages.
www.inf.ethz.ch /education/courses/detail?id=251-0264-00   (274 words)

  
 Semantics of Sequential and Parallel Programs
A semantics for a programming language is a mathematical model that reflects the intended computational behavior of programs.
The theory of programming languages provides foundations for the kind of ``formal methods'' advocated in software engineering, by allowing precise specifications of intended program behavior and permitting proofs that a program does (or perhaps does not) meet its specification.
For example, a denotational semantics is automatically compositional, while typically this is not the case for an operational semantics; nevertheless one can usually still justify modular program analysis in the operational style, although the style of semantic presentation tends to make it harder.
www.cs.cmu.edu /afs/cs/usr/brookes/www/spring99.html   (1087 words)

  
 Essentials of Programming Languages   (Site not responding. Last check: 2007-11-07)
Because Scheme is a wide-spectrum language, it enables us to write both at the very high level needed to produce a concise, comprehensible interpreter and at the much lower level needed to understand how that interpreter might be coded in assembly language, or transformed into a compiler.
Although our approach is largely motivated by the developments in programming language semantics over the last 20 years, we do not address a number of important research areas, such as type checking and inference, logic programming, parallelism, and verification.
It also teaches an approach to programming that starts with a high-level operational specification, which also serves as a rapid prototype, and ends with what is effectively assembly language.
www.cs.indiana.edu /eip/eopl.html   (1529 words)

  
 John McCarthy   (Site not responding. Last check: 2007-11-07)
This unpublished draft is a proposal for a new programming language, but it includes the mathematical theory of computation proposal for distinguishing input-output and accomplishment specifications, characterizes input and output statements as speech acts and allows reference to the past in programs.
Formalization of two Puzzles Involving Knowledge involves formalization of facts about knowledge including both knowing what and knowing that, how to assume and prove non-knowledge, joint knowledge and the effect of learning a fact on the set of facts then known.
FORMALIZATION OF STRIPS IN SITUATION CALCULUS is a 1985 note aimed at regarding STRIPS as a proof strategy for an interactive theorem prover using a situation calculus formalism.
www-formal.stanford.edu /jmc   (3057 words)

  
 CS-430: Formal Semantics   (Site not responding. Last check: 2007-11-07)
The course should be useful to anyone who is serious about programming, and is essential for anyone planning either to do research in programming languages or to design a programming language.
Survey existing language features to provide to the student a deep understanding of what these language features really mean, what they do, and how they compare to one another.
Haskell is a purely functional language that is quite a bit different from mainstream languages such as C, C++, or Java.
plucky.cs.yale.edu /cs430   (693 words)

  
 Intentional Software: The long tail of programming languages
When we look at programming languages, we tend to believe there are only a few dominant ones, such as Java, C++, VB and C#, and that all the rest are rarely used.
The fact that the top languages are general purpose languages is probably due primarily to the fact that they are general purpose and the choice of programming language is usually a corporate decision or at least standardized within a project, rather than an individual developer’s choice.
Grigore Rosu's class this semester, CS 522: Programming Language Semantics, we are working in groups to define the semantics for 8 different languages.
blog.intentionalsoftware.com /intentional_software/2005/04/the_long_tail_o.html   (1832 words)

  
 PLT Online   (Site not responding. Last check: 2007-11-07)
This is a collection of programming language theory texts and resources, all of which are freely available over the Internet.
PLNews posts "news, articles, announcements and information focusing on computer programming languages." Most of the posts are about releases of implementations.
Part of the reason PL theory and advanced programming languages seem impenetrable to other communities is that learning materials are hard to obtain, or demand a sizeable investment of resources (time, money,...) even if the potential reader is only exploring the subject.
www.cs.uu.nl /~franka/ref   (985 words)

  
 Programming Language Prelim Syllabus
Although much too extensive to be considered part of the syllabus, students should also be aware of the page of links to specific languages, critiques, and other programming language research topics.
Barrier Inference, A. Aiken and D. Gay, Proceedings of the 25th ACM Symposium on Principles of Programming Languages, January 1998.
Students in the programming language area are expected to be familiar with basic software engineering concepts, and to have some experience with a large software project.
www.cs.berkeley.edu /~yelick/pl-prelim   (1325 words)

  
 Annie Liu's CSE526: Principles of Programming Languages (Spring `01)   (Site not responding. Last check: 2007-11-07)
Such study enables precise reasoning about programs, their efficient implementation and easy reuse, as will be discussed in the course.
We will then look at functional languages, using ML as a main example, and study their formal semantics, covering the basics and overviewing more advanced topics.
A simple imperative language; evaluation of arithmetic and boolean expressions, execution of commands; equivalence relations; big-step vs small-step semantics.
www.cs.sunysb.edu /~liu/cse526/01s   (1572 words)

  
 Semantics of Programming Languages (G5004)   (Site not responding. Last check: 2007-11-07)
Winskel, G. (1993) The Formal Semantics of Programming Languages.
Gunter, C. (1992) Semantics of Programming Languages: structures and techniques.
Hennessy, M. (1990) The Semantics of Programming Languages: An Elementary Introduction.
www.sussex.ac.uk /maths/G5004.html   (391 words)

Try your search on: Qwika (all wikis)

Factbites
  About us   |   Why use us?   |   Reviews   |   Press   |   Contact us  
Copyright © 2005-2007 www.factbites.com Usage implies agreement with terms.