# rc

> command line interpreter for Version 10 Unix and Plan 9 operating systems

**Wikidata**: [Q1050629](https://www.wikidata.org/wiki/Q1050629)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Rc_(Unix_shell))  
**Source**: https://4ort.xyz/entity/rc

## Summary
rc is a command line interpreter and programming language designed for Version 10 Unix and Plan 9 operating systems. It was created by Tom Duff at Bell Labs and first released in 1989. rc serves as both a shell and a procedural programming language with weak typing discipline.

## Key Facts
- Developed by Bell Labs and designed by Tom Duff, born December 8, 1952
- First released in 1989 as a command line interpreter for Version 10 Unix and Plan 9 operating systems
- Classified as a procedural programming language, imperative programming language, and command line interface language
- Features weak typing discipline and is available as packages in Debian stable, Gentoo, and Arch User Repository
- Part of operating systems including Plan 9, Plan 9 from User Space, 9front, and Version 10 Unix
- Has aliases including "rc shell," "run commands," and "Rc (コマンドラインインタプリタ)"
- Available in 7 Wikipedia languages: English, Spanish, Italian, Japanese, Ukrainian, Greek, and Persian

## FAQs
### Q: What is rc used for?
A: rc is a command line interpreter and programming language used primarily in Version 10 Unix and Plan 9 operating systems. It functions as both a shell for executing commands and a procedural programming language for writing scripts.

### Q: Who created rc and when?
A: rc was designed by Tom Duff, an American computer programmer born on December 8, 1952, and developed at Bell Labs. It was first released in 1989.

### Q: What type of programming language is rc?
A: rc is a procedural programming language with imperative programming paradigm and weak typing discipline. It's classified as both a programming language and an operating system shell.

## Why It Matters
rc represents an important evolution in command line interpreters and shell programming, particularly within the Unix and Plan 9 ecosystems. Created during a pivotal time in operating system development at Bell Labs, rc offered a streamlined alternative to traditional Unix shells with its simplified syntax and consistent design philosophy. Its influence extends beyond its immediate user base, as it demonstrates the ongoing refinement of command line interfaces and the importance of shell languages in system administration and scripting. The language's continued maintenance through projects like 9front and Plan 9 from User Space shows its enduring relevance to operating system enthusiasts and researchers interested in alternative computing paradigms.

## Notable For
- Being specifically designed for Version 10 Unix and Plan 9 operating systems, making it integral to these systems' user experiences
- Created by Tom Duff, a notable computer scientist at Bell Labs known for his contributions to computer science
- Featuring weak typing discipline, which distinguishes it from strongly typed shell alternatives
- Maintaining active development through modern projects like 9front and Plan 9 from User Space
- Serving as both a command line interpreter and a full procedural programming language

## Body
### Development and History
rc was developed at Bell Labs, the research institution responsible for creating Unix and many foundational computing technologies. The language emerged in 1989 as part of the ongoing evolution of Unix and its variants, specifically targeting Version 10 Unix and the Plan 9 operating system. Tom Duff, the designer, was a computer scientist at Bell Labs who contributed significantly to operating system research.

### Technical Characteristics
As a procedural programming language, rc implements imperative programming paradigms with weak typing discipline. This means variables don't require explicit type declarations, making the language more flexible but potentially less strict about type safety compared to strongly typed alternatives. The language serves dual purposes as both a command line interpreter for executing system commands and as a programming language for writing scripts.

### Distribution and Availability
rc is distributed through multiple package management systems, including Debian stable, Gentoo (app-shells/rc), and Arch User Repository. It's also documented on the official Plan 9 documentation site at http://doc.cat-v.org/plan_9/4th_edition/papers/rc. The language maintains relevance through modern implementations in projects like 9front, a distributed operating system, and Plan 9 from User Space.

### Classification and Relationships
rc is classified under multiple categories: programming language, procedural programming language, command line interface language, operating system shell, and Unix shell. It's part of larger systems including Plan 9, Version 10 Unix, 9front, and Plan 9 from User Space. The language has international presence with Wikipedia articles in seven languages and maintains a Wikidata entry with seven sitelinks.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "rc",
  "description": "Command line interpreter and programming language for Version 10 Unix and Plan 9 operating systems",
  "url": "http://doc.cat-v.org/plan_9/4th_edition/papers/rc",
  "sameAs": [
    "https://www.wikidata.org/wiki/Q328",
    "https://en.wikipedia.org/wiki/Rc_(Unix_shell)"
  ],
  "additionalType": [
    "ProgrammingLanguage",
    "OperatingSystemShell",
    "CommandLineInterfaceLanguage"
  ]
}

## References

1. Freebase Data Dumps. 2013