Jump to content

XC (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by JonathanMayUK (talk | contribs) at 19:21, 14 November 2009 (Created page with ''''XC Programming Language''' is a computer programming language developed by XMOS. XC is an imperative programming language with a computational framework ba...'). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

XC Programming Language is a computer programming language developed by XMOS.

XC is an imperative programming language with a computational framework based on C. XC programs consist of functions that execute statements that act upon values stored in variables. Control-flow statements express decisions, and looping statements express iteration[1].

The language was designed to exploit the XMOS processor architecture[2], but is a general-purpose language and implementations for other architectures are in construction. Running XC on other platforms is currently supported by highly-optimised interpretation of the XMOS instruction set.

New or Unusual Features

One of the most unusual features of XC is the inclusion of timers and ports in a high-level programming language. One of the great historical weaknesses of high-level programming languages - particularly those based on formal theoretical frameworks such as process calculi or those based on functional programming - is the inability to combine clean high-level constructs with efficient and safe input-output.

Historical Influences

The language design was heavily influenced[3] by Communicating Sequential Processes - a process algebra developed by Tony Hoare, and therefore includes explicit parallelism and channel communication. Edsger Dijkstra can also claim an influence with the inclusion of guarded commands.

As a result the language bears semantic (though not structural) similarities to languages such as occam. This is not surprising as one of the chief XC language designers was David May who also created occam.

References