List of C-family programming languages

The C-family programming languages share significant features of the C programming language. Many of theses 70 languages were developmentally influenced by C due to its success and ubiquity. The family also includes predecessors that influenced C's design such as BCPL.

Notable programming sources use terms like C-style, C-like, a dialect of C, having C-like syntax. The term curly bracket programming language denotes a language that shares C's block syntax.[1][2]

C-family languages have features like:

C-family languages span multiple programming paradigms, conceptual models, and run-time environments.

Language Year begun Created by (at) Brief description, relationship to C References
Agora 1993 Dr. Patrick Steyaert A reflective, prototype-based, object-oriented programming language that is based exclusively on message passing and not delegation.
Alef 1995 Phil Winterbottom (Bell Labs) Created for systems programming on the Plan 9 from Bell Labs operating system; published in 1995 and eventually abandoned. It provided substantial language support for concurrent programming. [3]
Amiga E 1993 Wouter van Oortmerssen A combination of many features from several languages, but follows the original C language most closely in basic concepts.
AMPL 1985 Robert Fourer, David Gay and Brian Kernighan (Bell Labs) An algebraic modeling language with elements of a scripting language.
AWK 1977 Alfred Aho, Peter Weinberger & Brian Kernighan (Bell Labs) Designed for text processing and typically used as a data extraction and reporting tool. [4]
Axum 2009 Microsoft A domain specific concurrent language, based on the actor model.
BCPL 1966 Martin Richards A procedural, imperative, and structured language. Precursor to C. [5]
C 1969-1973 Dennis Ritchie (Bell Labs) Enhancement of Ken Thompson's B language. [2]
C shell/tcsh 1978 Bill Joy (UC Berkeley) Scripting language and standard Unix shell.
C* 1987 Thinking Machines Object-oriented, data-parallel ANSI C superset.
C++ 1979 Bjarne Stroustrup (Bell Labs) Named as "C with Classes" and renamed C++ in 1983; it began as a reimplementation of static object orientation in the tradition of Simula 67, and through standardization and wide use has grown to encompass generic programming as well as its original object-oriented roots. [6][2]
C-- 1997 Simon Peyton Jones, Norman Ramsey Generated mainly by compilers for very high-level languages.
Cg 2002 Nvidia Based on the C language and although they share the same syntax, some features of C were modified and new data types were added to make Cg more suitable for programming graphics processing units. This language is only suitable for GPU programming and is not a general programming language.
Ch 2001 Harry Cheng A C/C++ scripting language with extensions for shell programming and numerical computing. [7][8]
Chapel 2009 Cray Inc. Aims to improve the programmability of parallel computers in general and the Cray Cascade system in particular.
Charm 1996 P. Nowosad An object-oriented language with similarities to the RTL/2, Pascal and C languages in addition to containing some unique features of its own.
Cilk 1994 MIT Laboratory for Computer Science General-purpose language designed for multithreaded parallel computing.
CINT 1997-1999? Masaharu Goto An interpreted version of C/C++, much in the way BeanShell is an interpreted version of Java.
Claire 1994 Yves Caseau A high-level functional and object-oriented language with rule processing abilities.
Cyclone 2001 Greg Morrisett (AT&T Labs) Intended to be a safe dialect of the C language. It is designed to avoid buffer overflows and other vulnerabilities that are endemic in C programs, without losing the power and convenience of C as a tool for system programming.
C# 2000 Anders Hejlsberg Developed by Microsoft in the early 2000s as a modern, object-oriented language for the .NET framework. [2]
D 2001 Walter Bright (Digital Mars) Based on C++, but with an incompatible syntax having traits from other C-like languages like Java and C#.
Dart 2013 Lars Bak and Kasper Lund (Google) A class-based, single inheritance, object-oriented language with C-style syntax.
E 1997 Mark S. Miller, Dan Bornstein (Electric Communities) Designed with secure computing in mind, accomplished chiefly by strict adherence to the object-oriented computing model.
eC 2004 Jérôme Jacovella-St-Louis (Ecere) A super-set of C adding object-oriented features (inspired by C++), properties, dynamic modules and reflection developed as part of the Ecere SDK project, an open-source cross-platform SDK.
Fantom 2005 Brian Frank and Andy Frank An object-oriented, functional, actor concurrent with a null-able aware type system emphasizing pragmatism in building enterprise systems running on top of the JVM or the CLR or JavaScript.
Fusion (formerly Ć) 2011 Piotr Fusik and Adrian Matoga Fusion is a language based on C and C#. Aimed at crafting portable programming libraries, with syntax akin to C#. The translated code is lightweight (no virtual machine, emulation nor large runtime).
Go 2007 Rob Pike, Ken Thompson, and Robert Griesemer (Google) Released to public in 2009, it is a concurrent language with fast compilations, Java-like syntax, but no object-oriented features and strong typing.
Hack 2014 Julien Verlaguet, Alok Menghrajani, Drew Paroski (Facebook) A language for the HipHop Virtual Machine (HHVM).
Handel-C 1996 Oxford University Computing Laboratory A high-level language which targets low-level hardware, most commonly used in the programming of FPGAs. It is a rich subset of C.
HolyC 2005 Terry A. Davis A dialect of C for Terry's own operating system TempleOS. [9][10]
Java 1991 James Gosling (Sun Microsystems) Created as Oak, and released to the public in 1995. It is an OODL based inspired heavily by Objective-C, though with a syntax based somewhat on C++. Compiles to its own bytecode, and is strongly typed. [2]
JavaScript 1995 Brendan Eich (Netscape) Created as Mocha and LiveScript, announced in 1995, shipped the next year as JavaScript. Primarily a scripting language used in Web page development as well as numerous application environments such as Adobe Flash and QtScript. Though initially based on Scheme and Self, it is primarily a prototype-based object-oriented language with a syntax based on Java.[11] Standardized as ECMAScript. [12][13]
Limbo 1995 Limbo succeeded Alef and is used in Inferno as Alef was used in Plan9.
LSL 2003 Robin Liden Created for the Second Life virtual world by Linden Lab.
Lite-C 2007 Atari Inc A language for multimedia applications and personal computer games, using a syntax subset of the C language with some elements of the C++ language.
LPC 1995 Lars Pensjö Developed originally to facilitate MUD building on LPMuds. Though designed for game development, its flexibility has led to it being used for various purposes.
Neko 2005 Nicolas Cannasse (Motion-Twin) A high-level dynamically typed language.
Nemerle 2003 Kamil Skalski, Michał Moskal, Prof. Leszek Pacholski, Paweł Olszta at Wrocław University A general-purpose high-level statically typed language designed for platforms using the Common Language Infrastructure (.NET/Mono).
nesC 2003 David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer, & David Culler Pronounced "NES-see", it is an extension to the C language designed to embody the structuring concepts and execution model of TinyOS, an event-driven operating system designed for sensor network nodes with very limited resources. [14][15]
Newsqueak 1988 Rob Pike A concurrent language for writing application software with interactive graphical user interfaces, the syntax and semantics are influenced by the C language, but its approach to concurrency was inspired by Communicating sequential processes (CSP). [16][17]
Nim 2008 Andreas Rumpf An imperative, multi-paradigm, compiled language.
Noop 2009 Google Attempts to blend the best features of "old" and "new" languages, while syntactically encouraging good programming practice.
Not eXactly C (NXC) 2006 John Hansen A high-level language for the Lego Mindstorms NXT. NXC, which is short for Not eXactly C, is based on Next Byte Codes, an assembly language. NXC has a syntax like C. It is part of the BricX IDE that integrates editor, tools for interfacing with the brick, and the compiler, but supports more languages. [18]
Not Quite C (NQC) 1998 (approx.) David Baum An embedded systems programming language, application programming interface (API), and native bytecode compiler toolkit for the Lego Mindstorms RCX platform, Cybermaster and LEGO Spybotics systems. It is intended as a drop-in replacement for the LabVIEW-based ROBOLAB IDE. It is primarily based on the C language but has specific limits, such as a maximum number of subroutines and variables allowed. Later replaced with Not eXactly C (NXC), an enhanced version created for the Mindstorms NXT platform. [19]
Oak 1991 James Gosling (Sun Microsystems) A language created initially for Sun Microsystems set-top box project, it later evolved to become Java.
Objective-C 1986 Brad Cox and Tom Love An object-oriented dynamic language based heavily on Smalltalk. A loosely defined de facto standard library by the original developers has now largely been displaced by OpenStep FoundationKit variants. [6]
OpenCL C 2009 Apple, Khronos Group OpenCL specifies a modified subset of the C language for writing programs to run on various compute devices, e.g., GPUs, DSPs.
Perl 1988 Larry Wall Scripting language used extensively for system administration, text processing, and web server tasks. [2]
PHP 1995 Rasmus Lerdorf Widely used as a server-side scripting language. C-like syntax. [20]
Pike 1994 Fredrik Hübinette An interpreted, general-purpose, high-level, cross-platform, dynamic programming language, with a syntax similar to that of C.
PROMAL 1985 Systems Management Associates A C-like language for MS-DOS, Commodore 64, and Apple II.
R 1993 Ross Ihaka and Robert Gentleman A language and software environment for statistical computing and graphics. [21]
Ratfor 1974 Brian Kernighan (Bell Labs) A hybrid of C and Fortran, implemented as a preprocessor for environments with no easy access to C compilers.
Ring 2016 Mahmoud Samir Fayed A general-purpose dynamic language for applications development. [22][23][24]
Ruby 1995 Yukihiro Matsumoto An interpreted, high-level, general-purpose language which supports multiple programming paradigms.
Rust 2010 Graydon Hoare (Mozilla) A language empowering everyone to build reliable and efficient software.
S-Lang 1991 John E. Davis A library with a powerful interpreter that provides facilities required by interactive applications such as display/screen management, keyboard input, keymaps, etc. [25]
SA-C 2001 Cameron Project Single Assignment C (SA-C) is designed to be directly and intuitively translatable into circuits, including FPGAs.
SAC 1994 (Germany) Development spread to several institutions in Germany, Canada, and the UK. Functional language with C syntax. [26]
Seed7 2005 Thomas Mertes An extensible general-purpose language.
Split-C 1993 ? A parallel extension of the C language.
Squirrel 2003 Alberto Demichelis A light-weight scripting language.
Swift 2014 Chris Lattner (Apple) Swift can import any C library, optionally annotating C headers to map C types to Swift objects[27] and import libraries as Swift modules.[28] Swift has two-way bridging with Objective-C on platforms which support Apple's Objective-C runtime. Unlike Objective-C, Swift does not currently support C++ interoperation or exposing Swift types as C structs.
Telescript 1990 Marc Porat An object-oriented language.
TypeScript 2012 Microsoft JavaScript superset.
Umple 2008 University of Ottawa A language for both object-oriented programming and modeling with class diagrams and state diagrams.
Unified Parallel C 2003 ? An extension of the C language designed for high-performance computing on large-scale parallel machines.
V (Vlang) 2019 Alexander Medvednikov A general-purpose statically typed compiled language for ease of use, safety, speed, and maintainable software. [29]
Zig 2015 Andrew Kelley A general-purpose language and toolchain for maintaining robust, optimal, and reusable software. [30]

References

  1. ^ "Learn a C-style language". oreilly. O'Reilly. Retrieved 12 February 2024.
  2. ^ a b c d e f Wang, Wally (2007). Beginning programming for dummies (4th ed.). Indianapolis, IN: Wiley Pub. p. 359. ISBN 978-0-470-09968-1. OCLC 773827811.
  3. ^ "Alef Language Reference Manual".
  4. ^ "Glossary (The GNU Awk User's Guide)". www.gnu.org. Retrieved 2023-03-04.
  5. ^ "The before-C language". JeeLabs.org. Retrieved 2023-03-04.
  6. ^ a b "The C Family".
  7. ^ "Scientific Numerical Computing".
  8. ^ "cross platform Ch Shell Programming".
  9. ^ "The Temple Operating System". 2017-03-25. Archived from the original on 2017-03-25. Retrieved 2019-04-16.
  10. ^ "A Language Design Analysis of HolyC - Harrison Totty". harrison.totty.dev. Retrieved 2023-03-04.
  11. ^ "Chapter 4. How JavaScript Was Created". speakingjs.com. Archived from the original on 2020-02-27. Retrieved 2020-06-13.
  12. ^ "JavaScript language overview - JavaScript". developer.mozilla.org (MDN). Retrieved 2023-03-04.
  13. ^ Reid, Jonathan (2013). JavaScript programmer's reference. Thomas Valentine. [Berkeley, Calif.]: Apress. p. 2. ISBN 978-1-4302-4630-5. OCLC 852144161.
  14. ^ GitHub - tinyos/nesc: Master nesc repository., TinyOS, 2019-03-05, retrieved 2019-03-17
  15. ^ "The nesC Language: A Holistic Approach to Networked Embedded Systems" (PDF).
  16. ^ http://cdn.oreillystatic.com/en/assets/1/event/45/Go%20Presentation.pdf [bare URL PDF]
  17. ^ https://doc.cat-v.org/bell_labs/squeak/squeak.pdf [bare URL PDF]
  18. ^ "NXC - Not eXactly C".
  19. ^ "NQC - Not Quite C".
  20. ^ "PHP: History of PHP: Manual". www.php.net. Retrieved 2023-03-04.
  21. ^ Mastering parallel programming with R : master the robust features of R parallel programming to accelerate your data science computations. Simon R. Chapple, Eilidh Troup, Thorsten Forster, Terence Sloan. Birmingham, UK. 2016. p. 156. ISBN 978-1-78439-462-2. OCLC 951337124.{{cite book}}: CS1 maint: location missing publisher (link) CS1 maint: others (link)
  22. ^ Ayouni, Mansour. Beginning Ring Programming - From Novice to Professional. Apress.
  23. ^ "Control Structures - Third Style — Ring 1.16 documentation".
  24. ^ Ring Team (23 October 2021). "The Ring programming language and other languages". ring-lang.net.
  25. ^ "S-Lang Library Information Page".
  26. ^ "Archived copy" (PDF). Archived from the original (PDF) on 2016-03-05. Retrieved 2015-05-11.{{cite web}}: CS1 maint: archived copy as title (link)
  27. ^ "Swift Programming Language Evolution". GitHub. 17 October 2021.
  28. ^ "Swift Programming Language Evolution". GitHub. 17 October 2021.
  29. ^ "The V Programming Language".
  30. ^ "The Zig Programming Language".

Read other articles:

American politician (1767–1841) This article is about U.S. senator. For the singer-songwriter, see James Lanman (musician). James LanmanPortrait of Lanman by Chester Harding(courtesy Yale University Art Gallery)United States Senatorfrom ConnecticutIn officeMarch 4, 1819 – March 3, 1825Preceded byDavid DaggettSucceeded byCalvin Willey Personal detailsBorn(1767-06-14)June 14, 1767Norwich, ConnecticutDiedAugust 7, 1841(1841-08-07) (aged 74)Norwich, ConnecticutPolitical partyDem...

 

Diagram ini menunjukkan orbit satelit iregular Saturnus. Di tengah, orbit Titan, sebuah satelit yang regular, ditandai dengan warna merah sebagai perbandingan. Tarvos (satelit) adalah satelit alami dari planet Saturnus. Saturnus memiliki 62 satelit, dengan 53 di antaranya telah dinamai dan hanya 13 di antaranya memiliki diameter lebih besar dari 50 kilometer. Referensi http://solarsystem.nasa.gov/planets/profile.cfm?Display=Sats&Object=Saturn Diarsipkan 2014-04-16 di Wayback Machine.

 

Each of two small structures deep within the temporal lobe of complex vertebrates For other uses, see Amygdala (disambiguation). AmygdalaLocation of the amygdalae in the human brainSubdivisions of the amygdalaDetailsIdentifiersLatincorpus amygdaloideumMeSHD000679NeuroNames237NeuroLex IDbirnlex_1241TA98A14.1.09.402TA25549FMA61841Anatomical terms of neuroanatomy[edit on Wikidata] Human brain in the coronal orientation. Amygdalae are shown in dark red. The amygdala (/əˈmɪɡdələ/; pl.: a...

Think tank and left-wing advocacy group This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: Public Citizen – news · newspapers · books · scholar · JSTOR (May 2021) (Learn how and when to remove this template message) Public Citizen, Inc.Public Citizen Foundation, Inc.Public Citizen's headquarters in Washington, D.C.Founded1971 by Ralph Nader in the USTypeTh...

 

Boels Dolmans 2016GénéralitésÉquipe SD WorxCode UCI DLTStatut Équipe cycliste professionnelle féminine, cyclisme fémininPays  Pays-BasSport Cyclisme sur routeEffectif 12Directeur sportif Danny StamPalmarèsMeilleur coureur UCI Megan Guarnier (1re)Classement UCI 1reBoels Dolmans 2015Boels Dolmans 2017modifier - modifier le code - modifier Wikidata La saison 2016 de l'équipe cycliste Boels Dolmans est la septième de la formation. L'effectif est quasiment stable avec seulement l'ar...

 

Defunct far-right political party in Canada National Unity Party of Canada Parti de l'unité nationale du CanadaAbbreviationNUPC (English)PUNC (French)LeaderAdrien ArcandFoundedFebruary 22, 1934 (1934-02-22) (as the PNSC); July 1938 (as the National Unity Party)DissolvedJuly 27, 2016 (2016-07-27)Merger ofSeveral fascist groups, notably the PNSCHeadquarters7337 Chemin ParkinsonRawdon, QuebecJ0K 1S0NewspaperThe Canadian Nationalist (English)Le Combat National ...

Artikel ini perlu diterjemahkan dari bahasa Inggris ke bahasa Indonesia. Artikel ini ditulis atau diterjemahkan secara buruk dari Wikipedia bahasa Inggris. Jika halaman ini ditujukan untuk komunitas bahasa Inggris, halaman itu harus dikontribusikan ke Wikipedia bahasa Inggris. Lihat daftar bahasa Wikipedia. Artikel yang tidak diterjemahkan dapat dihapus secara cepat sesuai kriteria A2. Jika Anda ingin memeriksa artikel ini, Anda boleh menggunakan mesin penerjemah. Namun ingat, mohon tidak men...

 

Music genre Progressive metalcoreOther names Technical metalcore ambient metalcore Stylistic origins Progressive metal metalcore Cultural originsMid 1990s, United StatesTypical instruments Electric guitar bass guitar keyboard drums percussion vocals Other topics Technical death metal post-metal deathcore mathcore djent Progressive metalcore (also called technical metalcore or ambient metalcore) is a fusion of progressive metal and metalcore characterized by highly technical lead guitar, atmos...

 

Japanese anime television series This article does not cite any sources. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: The Brave Express Might Gaine – news · newspapers · books · scholar · JSTOR (September 2019) (Learn how and when to remove this message) The Brave Express Might GaineCover art from box 1 of the DVD release勇者特急マイトガイン(Yūsha Tok...

Site of Iceland's ancient parliament Þingvellir National ParkIUCN category II (national park)Þingvellir seen from the information centreArea9,270 ha (35.8 sq mi)Established1930 (1930)[1] UNESCO World Heritage SiteOfficial nameÞingvellir National ParkLocationSouthern Region, IcelandCriteriaCultural: (iii), (vi)Reference1152Inscription2004 (28th Session)EndangeredlynxWebsitewww.thingvellir.is/en Coordinates64°15′13.7″N 21°2′14.1″W / &#x...

 

Marian apparitions in December 1531 This article is about the Mexican Marian title. For the Spanish Marian title, see Our Lady of Guadalupe in Extremadura. 19°29′04″N 99°07′02″W / 19.48444°N 99.11722°W / 19.48444; -99.11722 Our Lady of Guadalupe Empress of the Americas Patroness of Latin America Queen of Mexico LocationTepeyac Hill, Mexico CityDateDecember 9–12, 1531 O.S.(December 19–22, 1531 N.S.)WitnessJuan DiegoJuan BernardinoTypeMarian apparitionApp...

 

Angkatan Darat MalaysiaTentera Darat Malaysiaتنترا دارت مليسياLambang Angkatan Darat MalaysiaDibentuk1 Maret 1933; 91 tahun lalu (1933-03-01)Negara MalaysiaAliansi Raja MalaysiaCabang Angkatan Tentara MalaysiaTipe unitAngkatan daratJumlah personel80.000 tentara reguler (2019)[1]50.000 tentara cadanganPelindungYang di-Pertuan AgongMotoGagah SetiaWarna seragam   Red and GoldUlang tahun1 MarchPertempuran List Perang Dunia IIKedaruratan Malaya Pertama (1...

Forest in Colorado, United States This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Pike National Forest – news · newspapers · books · scholar · JSTOR (June 2012) (Learn how and when to remove this message) Pike National ForestNear Devil's Head LookoutLocationClear Creek, Douglas, El Paso, Jefferson, Park, and...

 

Pour les articles homonymes, voir Valdemar. Valdemar de Danemark Le prince Valdemar en 1936. Biographie Titulature Prince de Danemark et d'IslandePrince de Danemark Dynastie Maison de Glücksbourg Distinctions Ordre de l'ÉléphantOrdre de DannebrogOrdre du Bain Autres fonctions Amiral de la flotte Nom de naissance Valdemar af Danmark Naissance 27 octobre 1858Palais de Bernstorff (Copenhague) Décès 14 janvier 1939 (à 80 ans)Palais Jaune (Copenhague) Sépulture Cathédrale de Roskilde...

 

Component city in Negros Occidental, Philippines This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Sagay, Negros Occidental – news · newspapers · books · scholar · JSTOR (April 2022) (Learn how and when to remove this message) Sagay redirects here. For the municipality in Camiguin, see Sagay, Camiguin. Compone...

Conversión de la calzada en ciclovías y carriles bus mediante urbanismo táctico en París. Se pacifica el tráfico y aumenta la seguridad vial. Además mejora la eficiencia del transporte público y se diversifican los medios de transporte al dar seguridad a los ciclistas. El adelgazamiento viario o dieta vial es una técnica de pacificación del tráfico que consiste en la reducción del ancho de la calzada o en la disminución del número de carriles.[1]​[2]​ Mayor anchura o ...

 

Species of bird Paint-billed crake Conservation status Least Concern  (IUCN 3.1)[1] Scientific classification Domain: Eukaryota Kingdom: Animalia Phylum: Chordata Class: Aves Order: Gruiformes Family: Rallidae Genus: Mustelirallus Species: M. erythrops Binomial name Mustelirallus erythrops(Sclater, PL, 1867) Range (note: distribution in Central America and the Galapagos is missing.) Synonyms Mustelirallus erythrops[2] The paint-billed crake (Mustelirallus erythrops) ...

 

Ngôi sao nhí nổi tiếng Shirley Temple tham gia bộ phim Công chúa nhỏ (1939) khi 11 tuổi. Diễn viên nhí (tiếng Anh: child actor) là một diễn viên ở độ tuổi thiếu nhi, thanh thiếu niên tham gia diễn xuất trên sân khấu, màn ảnh rộng hoặc trên truyền hình, nhưng cũng được áp dụng cho một người lớn bắt đầu sự nghiệp diễn xuất từ khi còn nhỏ. Để tránh nhầm lẫn, sau này cũng được gọi là một ...

Disambiguazione – Se stai cercando altri significati, vedi Wikipedia (disambigua). Wikipediasito webLogo Screenshot del portale multilingue di Wikipedia URLwikipedia.org/ Tipo di sitoEnciclopedia online LinguaMultilingua RegistrazioneOpzionale Scopo di lucroNo ProprietarioWikimedia Foundation Creato daJimmy Wales, Larry Sanger Lancio15 gennaio 2001 Stato attualeAttivo SloganL'enciclopedia libera Modifica dati su Wikidata · Manuale Wikipedia (pronuncia: vedi sotto) è un'enciclopedia ...

 

16th century Kabbalist Itzhak Luria redirects here. For the Israeli swimmer, see Itzhak Luria (swimmer). For a character in The X-Files episode, see Kaddish (The X-Files). RabbiIsaac LuriaThe grave of Isaac Luria in SafedTitleHa'ARI Ha'ARI Hakadosh ARIZaLPersonalBorn1534Jerusalem, Damascus Eyalet, Ottoman Syria, Ottoman EmpireDiedJuly 25, 1572 (aged 37–38) (5 Av 5332 AM)Safed, Damascus Eyalet, Ottoman Syria, Ottoman EmpireReligionJudaismSignatureBuriedOld Cemetery of Safed Isaac b...