# C--

> C-like programming language

**Wikidata**: [Q81348](https://www.wikidata.org/wiki/Q81348)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/C--)  
**Source**: https://4ort.xyz/entity/c-q81348

## Summary
C-- is a C-like programming language developed by Simon Peyton Jones and Norman Ramsey in 1997. It is characterized by its weak typing and static typing disciplines, and its file extension is `.c--`. The language was designed to explore alternative paradigms in programming language design, with version 2.0 released in 2005.

## Key Facts
- C-- is a programming language classified as a C-like language.
- It was developed by Simon Peyton Jones and Norman Ramsey.
- The language was first designed in 1997.
- Version 2.0 of C-- was released on February 23, 2005.
- The official website for C-- is [http://www.cs.tufts.edu/~nr/c--](http://www.cs.tufts.edu/~nr/c--).
- C-- uses the file extension `.c--`.
- The language supports weak typing and static typing.
- C-- follows the imperative programming paradigm.
- The Freebase ID for C-- is `/m/0508gj`.
- C-- is available in multiple Wikipedia language editions, including English, French, and German.
- The sitelink count for C-- is 21.

## FAQs
**What is C-- and how does it differ from C?**
C-- is a programming language developed by Simon Peyton Jones and Norman Ramsey, designed to explore alternative paradigms in programming language design. It is classified as a C-like language, meaning it shares similarities with C but has distinct features such as weak typing and static typing.

**Who developed C-- and when was it created?**
C-- was developed by Simon Peyton Jones and Norman Ramsey and was first designed in 1997. Version 2.0 of the language was released on February 23, 2005.

**What are the typing disciplines of C--?**
C-- supports both weak typing and static typing. This means the language allows for implicit type conversions and enforces type checking at compile time.

**What is the file extension for C-- source files?**
The file extension for C-- source files is `.c--`.

**Where can I find more information about C--?**
More information about C-- can be found on its official website at [http://www.cs.tufts.edu/~nr/c--](http://www.cs.tufts.edu/~nr/c--).

## Why It Matters
C-- holds significance in the field of programming language design as it represents an exploration of alternative paradigms compared to traditional languages like C. Its development by Simon Peyton Jones, a prominent British computer scientist, underscores its role in academic and research communities. The language's typing disciplines—weak typing and static typing—offer unique features that may influence future language design. Additionally, C--'s historical development and version updates reflect ongoing efforts in programming language evolution.

## Notable For
- C-- is a C-like programming language with distinct typing disciplines.
- It was developed by Simon Peyton Jones and Norman Ramsey in 1997.
- Version 2.0 was released in 2005, marking a significant update.
- The language supports both weak typing and static typing.
- C-- uses the file extension `.c--`.
- It has a sitelink count of 21, indicating its presence across various platforms.
- C-- is available in multiple Wikipedia language editions, reflecting its global reach.

## Body
### History
C-- was developed by Simon Peyton Jones and Norman Ramsey in 1997. The language was designed to explore alternative paradigms in programming language design, differing from traditional languages like C. Version 2.0 of C-- was released on February 23, 2005, introducing updates and refinements to the language.

### Development
Simon Peyton Jones and Norman Ramsey were the primary developers of C--. Peyton Jones, a British computer scientist, is known for his contributions to programming language research. The language was created to investigate new approaches in programming, leading to its unique features and typing disciplines.

### Typing Disciplines
C-- supports both weak typing and static typing. Weak typing allows for implicit type conversions, while static typing enforces type checking at compile time. This combination provides flexibility while maintaining type safety, which is a notable feature of the language.

### File Extension
The file extension for C-- source files is `.c--`. This extension is used to distinguish C-- files from other programming languages, ensuring proper identification and handling by development tools.

### Website and Documentation
The official website for C-- is [http://www.cs.tufts.edu/~nr/c--](http://www.cs.tufts.edu/~nr/c--). This website serves as a resource for documentation, updates, and community engagement related to the language.

### Wikipedia Presence
C-- is available in multiple Wikipedia language editions, including English, French, and German. The sitelink count of 21 indicates its presence across various platforms, reflecting its global reach and interest.

### Programming Paradigm
C-- follows the imperative programming paradigm, which focuses on statements that change a program's state. This paradigm is common in languages like C, and C-- retains this approach while incorporating its unique typing disciplines.

### Freebase ID
The Freebase ID for C-- is `/m/0508gj`. This identifier is used in databases and systems that reference C--, ensuring accurate and consistent representation of the language.

### Language Editions
C-- is available in multiple Wikipedia language editions, including Bengali, Czech, German, Spanish, Finnish, French, Hebrew, Armenian, Italian, Japanese, Latin, Norwegian, Occitan, Polish, Portuguese, Russian, Slovenian, Tamil, Ukrainian, and Cantonese. This multilingual presence highlights the language's global interest and accessibility.

## References

1. [Source](https://www.cs.tufts.edu/~nr/c--/extern/man2.pdf)
2. [Source](https://www.cs.tufts.edu/~nr/c--/abstracts/pal-ifl.html)
3. Freebase Data Dumps. 2013
4. [Source](https://github.com/nrnrnr/qc--/commit/4b6069590aee43b75cd9aff1d0f7fab4fce2e760)
5. [Source](https://github.com/nrnrnr/qc--/tree/master/test2/src)