Jump to content

Список языков программирования семейства C

(Перенаправлено с C-like )

Языки программирования семейства C имеют общие черты с языком программирования C. Многие из них находились под влиянием C из-за его успеха и повсеместного распространения. В семейство также входят предшественники, повлиявшие на дизайн C, такие как BCPL .

Известные источники программирования используют такие термины, как C-style , C-like , диалект C , имеющий C-подобный синтаксис . Термин «язык программирования в фигурных скобках» обозначает язык, который разделяет блочный синтаксис C. [1] [2]

Языки семейства C имеют такие особенности, как:

Языки семейства C охватывают множество парадигм программирования, концептуальных моделей и сред выполнения.

Язык Год начался Создано (в) Краткое описание, отношение к C Ссылки
Сейчас 1993 Доктор Патрик Стейерт Рефлексивный , , основанный на прототипах , объектно-ориентированный язык программирования основанный исключительно на передаче сообщений , а не на делегировании.
Алеф 1995 Фил Уинтерботтом (Bell Labs) Создан для системного программирования на операционной системе Plan 9 от Bell Labs ; опубликовано в 1995 году и в конечном итоге заброшено. Он обеспечил существенную языковую поддержку для параллельного программирования . [3]
друг Е 1993 Воутер ван Оортмерссен Комбинация многих функций из нескольких языков, но наиболее точно соответствует исходному языку C в основных концепциях.
AMPL 1985 Роберт Фурер , Дэвид Гей и Брайан Керниган ( Bell Labs ) Алгебраический язык моделирования с элементами скриптового языка.
АВК 1977 Альфред Ахо , Питер Вайнбергер и Брайан Керниган ( Bell Labs ) Предназначен для обработки текста и обычно используется в качестве инструмента извлечения данных и составления отчетов. [4]
Аксум 2009 Майкрософт Предметно-ориентированный параллельный язык, основанный на модели актера .
БКПЛ 1966 Мартин Ричардс Процедурный, императивный и структурированный язык. Предшественник C. [5]
С 1969-1973 Деннис Ритчи ( Bell Labs ) Улучшение Кена Томпсона языка B . [2]
Оболочка C / tcsh 1978 Билл Джой ( Калифорнийский университет в Беркли ) Язык сценариев и стандартная оболочка Unix .
С* 1987 Мыслящие машины Объектно-ориентированный с параллельными данными расширенный набор ANSI C .
С++ 1979 Бьерн Страуструп ( Bell Labs ) Назван «C с классами» и переименован в C++ в 1983 году; он начался как повторная реализация статической объектно-ориентированной ориентации в традициях Simula 67, а благодаря стандартизации и широкому использованию стал охватывать общее программирование , а также его первоначальные объектно-ориентированные корни. [6] [2]
С-- 1997 Саймон Пейтон Джонс , Норман Рэмси Создается в основном компиляторами для языков очень высокого уровня.
Кг 2002 Нвидиа Основанные на языке C и имеющие одинаковый синтаксис, некоторые функции C были изменены и добавлены новые типы данных, чтобы сделать Cg более подходящим для программирования графических процессоров. Этот язык подходит только для программирования на графическом процессоре и не является общим языком программирования.
Ч 2001 Гарри Ченг Язык сценариев AC/C++ с расширениями для программирования оболочки и численных вычислений. [7] [8]
Часовня 2009 Крей Инк. Направлен на улучшение программируемости параллельных компьютеров в целом и системы Cray Cascade в частности.
Очарование 1996 П. Новосад Объектно-ориентированный язык, имеющий сходство с языками RTL/2, Pascal и C, а также содержащий некоторые собственные уникальные особенности.
Том 1994 Лаборатория компьютерных наук Массачусетского технологического института Язык общего назначения, предназначенный для многопоточных параллельных вычислений.
ПОЯС 1997-1999? Масахару Гото Интерпретируемая версия C/C++, во многом аналогично тому, как BeanShell является интерпретируемой версией Java.
Клэр 1994 Ив Казо Функциональный и объектно-ориентированный язык высокого уровня с возможностями обработки правил.
Циклон 2001 Грег Моррисетт ( AT&T Labs ) Задуман как безопасный диалект языка C. Он разработан, чтобы избежать переполнения буфера и других уязвимостей, характерных для программ на языке C, не теряя при этом мощности и удобства языка C как инструмента системного программирования.
С# 2000 Андерс Хейлсберг Разработан Microsoft 2000 - в начале х годов как современный объектно-ориентированный язык для платформы .NET . [2]
Д 2001 Уолтер Брайт ( Digital Mars ) Основан на C++, но с несовместимым синтаксисом, имеющим черты других C-подобных языков, таких как Java и C#.
Дарт 2013 Ларс Бак и Каспер Лунд ( Google ) Объектно-ориентированный язык на основе классов с единым наследованием и синтаксисом в стиле C.
И 1997 Марк С. Миллер , Дэн Борнштейн (Электрические сообщества) Разработан с учетом требований безопасности вычислений и достигается главным образом за счет строгого соблюдения объектно-ориентированной модели вычислений.
ЕС 2004 Жером Жаковелла-Сент-Луи (Эцере) Супернабор C, добавляющий объектно-ориентированные функции (вдохновленные C++), свойства, динамические модули и отражения, разработанные в рамках проекта Ecere SDK, кроссплатформенного SDK с открытым исходным кодом.
Фантом 2005 Брайан Франк и Энди Франк Объектно-ориентированный, функциональный актер, работающий одновременно с системой типов, допускающей нулевые значения, подчеркивающий прагматизм при построении корпоративных систем, работающих поверх JVM, CLR или JavaScript.
Фьюжн (ранее Ć) 2011 Петр Фусик и Адриан Матога Fusion — это язык, основанный на C и C#. Направлен на создание переносимых библиотек программирования с синтаксисом, близким к C#. Переведенный код является легким (без виртуальной машины, эмуляции и большого времени выполнения).
Идти 2007 Роб Пайк , Кен Томпсон и Роберт Гриземер ( Google ) Выпущенный для широкой публики в 2009 году, это параллельный язык с быстрой компиляцией, синтаксисом, подобным Java, но без объектно-ориентированных функций и строгой типизации .
Взломать 2014 Жюльен Верлаге, Алок Менграджани, Дрю Пароски ( Facebook ) Язык для виртуальной машины HipHop (HHVM).
Трейд-С 1996 Вычислительная лаборатория Оксфордского университета Язык высокого уровня, предназначенный для аппаратного обеспечения низкого уровня, чаще всего используемый при программировании FPGA. Это богатое подмножество C.
HolyC 2005 Терри А. Дэвис Диалект C для собственной операционной системы Терри TempleOS . [9] [10]
Ява 1991 Джеймс Гослинг ( Sun Microsystems ) Создан как Oak и выпущен для широкой публики в 1995 году. Это OODL, основанный на Objective-C, хотя синтаксис отчасти основан на C++. Компилируется в собственный байт-код и является строго типизированным. [2]
JavaScript 1995 Брендан Эйх ( Netscape ) Созданный как Mocha и LiveScript, анонсированный в 1995 году, в следующем году был выпущен как JavaScript . В первую очередь язык сценариев, используемый при разработке веб-страниц, а также в многочисленных средах приложений, таких как Adobe Flash и QtScript . Хотя изначально он основан на Scheme и Self , в первую очередь это язык на основе прототипов объектно-ориентированный с синтаксисом, основанным на Java . [11] Стандартизован как ECMAScript . [12] [13]
Лимбо 1995 Лимбо пришел на смену Алефу и используется в Inferno , как Алеф использовался в Plan9.
ЛСЛ 2003 Робин Литтл Создан для виртуального мира Second Life компанией Linden Lab .
Лайт-С 2007 Атари Инк Язык для мультимедийных приложений и игр для персональных компьютеров, использующий синтаксическое подмножество языка C с некоторыми элементами языка C++.
ЛПК 1995 Ларс Пенсьё Первоначально разработан для облегчения построения MUD на основе LPMuds . Несмотря на то, что он предназначен для разработки игр, его гибкость привела к тому, что его можно использовать для различных целей.
Ничего 2005 Николя Каннасс ( Motion-Twin ) Динамически типизированный язык высокого уровня.
Немерль 2003 Камиль Скальский, Михал Москаль, проф. Лешек Пахольский, Павел Ольшта во Вроцлавском университете Статически типизированный язык высокого уровня общего назначения, разработанный для платформ, использующих Common Language Infrastructure (.NET/Mono).
Неши 2003 Дэвид Гей, Филип Левис , Роберт фон Берен, Мэтт Уэлш , Эрик Брюэр и Дэвид Каллер Произносится как «NES-see», это расширение языка C, предназначенное для воплощения концепций структурирования и модели выполнения TinyOS , событийно-управляемой операционной системы, предназначенной для узлов сенсорной сети с очень ограниченными ресурсами. [14] [15]
газеты 1988 Роб Пайк Параллельный язык для написания прикладного программного обеспечения с интерактивными графическими пользовательскими интерфейсами. На синтаксис и семантику влияет язык C, но его подход к параллелизму был вдохновлен коммуникацией последовательных процессов (CSP). [16] [17]
Nim 2008 Андреас Румпф Императивный, мультипарадигмальный, компилируемый язык.
Неа 2009 Google Попытка объединить лучшие особенности «старых» и «новых» языков, одновременно поощряя синтаксически хорошую практику программирования.
Не совсем C (NXC) 2006 Джон Хансен Язык высокого уровня для Lego Mindstorms NXT . NXC, сокращение от Not eXactly C, основан на языке ассемблера Next Byte Codes . NXC имеет синтаксис, подобный C. Это часть BricX IDE, которая объединяет редактор, инструменты для взаимодействия с кирпичом и компилятор, но поддерживает больше языков. [18]
Не совсем C (NQC) 1998 (приблизительно) Дэвид Баум Язык программирования встроенных систем , интерфейс прикладного программирования (API) и собственный набор инструментов компилятора байт-кода для платформы Lego Mindstorms RCX, систем Cybermaster и LEGO Spybotics. Он предназначен для полной замены среды разработки ROBOLAB на базе LabVIEW . Он в основном основан на языке C, но имеет определенные ограничения, такие как максимальное количество разрешенных подпрограмм и переменных. Позже заменен на Not eXactly C (NXC), расширенную версию, созданную для платформы Mindstorms NXT. [19]
Дуб 1991 Джеймс Гослинг ( Sun Microsystems ) Язык, первоначально созданный для проекта телеприставки Sun Microsystems, позже превратился в Java.
Цель-C 1986 Брэд Кокс и Том Лав Объектно-ориентированный динамический язык, в значительной степени основанный на Smalltalk . Слабо определенная стандартная библиотека де-факто первоначальными разработчиками теперь в значительной степени вытеснена вариантами OpenStep FoundationKit. [6]
OpenCL C 2009 Apple , Группа Хронос OpenCL определяет модифицированное подмножество языка C для написания программ для запуска на различных вычислительных устройствах, например графических процессорах, DSP.
Перл 1988 Ларри Уолл Язык сценариев широко используется для системного администрирования, обработки текста и задач веб-сервера. [2]
PHP 1995 Расмус Лердорф Широко используется в качестве языка сценариев на стороне сервера. C-подобный синтаксис. [20]
Щука 1994 Фредрик Хюбинетт Интерпретируемый, универсальный, кросс-платформенный, динамический язык программирования высокого уровня, синтаксис которого аналогичен синтаксису C.
PROMAL 1985 Партнеры по системному менеджменту C-подобный язык для MS- DOS , Commodore 64 и Apple II.
Р 1993 Росс Ихака и Роберт Джентльмен Язык и программная среда для статистических вычислений и графики. [21]
Рулевое колесо 1974 Брайан Керниган (Bell Labs) Гибрид C и Fortran , реализованный как препроцессор для сред, где нет простого доступа к компиляторам C.
Кольцо 2016 Махмуд Самир Файед Динамический язык общего назначения для разработки приложений. [22] [23] [24]
Руби 1995 Юкихиро Мацумото Интерпретируемый язык высокого уровня общего назначения, поддерживающий несколько парадигм программирования.
Ржавчина 2010 Грейдон Хоар ( Mozilla ) Язык, позволяющий каждому создавать надежное и эффективное программное обеспечение.
S-только 1991 Джон Э. Дэвис Библиотека с мощным интерпретатором, предоставляющая возможности, необходимые для интерактивных приложений, такие как управление дисплеем/экраном, ввод с клавиатуры, раскладки клавиш и т. д. [25]
СА-С 2001 Кэмерон Проект Single Assignment C (SA-C) предназначен для прямой и интуитивной интерпретации в схемах, включая FPGA.
САК 1994 (Германия) Разработка распространилась на несколько учреждений в Германии, Канаде и Великобритании. Функциональный язык с синтаксисом C. [26]
Сид7 2005 Томас Мертес Расширяемый язык общего назначения.
Сплит-С 1993 ? Параллельное расширение языка C.
Белка 2003 Альберто Демикелис Легкий язык сценариев.
Быстрый 2014 Крис Лэттнер ( Apple ) Swift может импортировать любую библиотеку C, при необходимости аннотируя заголовки C для сопоставления типов C с объектами Swift. [27] и импортируйте библиотеки как модули Swift. [28] Swift имеет двустороннее соединение с Objective-C на платформах, которые поддерживают среду выполнения Apple Objective-C. В отличие от Objective-C, Swift в настоящее время не поддерживает взаимодействие с C++ и не представляет типы Swift как структуры C.
Телескрипт 1990 Марк Порат Объектно-ориентированный язык.
Машинопись 2012 Майкрософт Расширенный набор JavaScript.
Наполнять 2008 Университет Оттавы Язык объектно-ориентированного программирования и моделирования с использованием диаграмм классов и диаграмм состояний.
Унифицированный параллельный C 2003 ? Расширение языка C, предназначенное для высокопроизводительных вычислений на крупномасштабных параллельных машинах.
В (Вланг) 2019 Alexander Medvednikov Статически типизированный компилируемый язык общего назначения, обеспечивающий простоту использования, безопасность, скорость и удобство обслуживания программного обеспечения. [29]
Зиг 2015 Эндрю Келли Язык общего назначения и набор инструментов для поддержки надежного, оптимального и многократно используемого программного обеспечения. [30]
  1. ^ «Изучите язык в стиле C» . орейли . О'Рейли . Проверено 12 февраля 2024 г.
  2. ^ Jump up to: а б с д и ж Ван, Уолли (2007). Начало программирования для чайников (4-е изд.). Индианаполис, Индиана: Паб Wiley. п. 359. ИСБН  978-0-470-09968-1 . OCLC   773827811 .
  3. ^ «Справочник по языку алеф» .
  4. ^ «Глоссарий (Руководство пользователя GNU Awk)» . www.gnu.org . Проверено 4 марта 2023 г.
  5. ^ «Язык до C» . JeeLabs.org . Проверено 4 марта 2023 г.
  6. ^ Jump up to: а б «Семья С» .
  7. ^ «Научные численные вычисления» .
  8. ^ «Кроссплатформенное программирование Ch Shell» .
  9. ^ «Храмовая операционная система» . 25 марта 2017 г. Архивировано из оригинала 25 марта 2017 г. Проверено 16 апреля 2019 г.
  10. ^ «Анализ языкового дизайна HolyC - Харрисон Тотти» . harrison.totty.dev . Проверено 4 марта 2023 г.
  11. ^ «Глава 4. Как создавался JavaScript» . говорящий js.com . Архивировано из оригинала 27 февраля 2020 г. Проверено 13 июня 2020 г.
  12. ^ «Обзор языка JavaScript — JavaScript» . Developer.mozilla.org (MDN) . Проверено 4 марта 2023 г.
  13. ^ Рид, Джонатан (2013). Справочник программиста JavaScript . Томас Валентайн. [Беркли, Калифорния]: Apress. п. 2. ISBN  978-1-4302-4630-5 . OCLC   852144161 .
  14. ^ GitHub — tinyos/nesc: главный репозиторий nesc. , TinyOS, 05 марта 2019 г. , получено 17 марта 2019 г.
  15. ^ «Язык nesC: целостный подход к сетевым встраиваемым системам» (PDF) .
  16. ^ http://cdn.oreillystatic.com/en/assets/1/event/45/Go%20Presentation.pdf [ только URL-адрес PDF ]
  17. ^ https://doc.cat-v.org/bell_labs/squeak/squeak.pdf [ только URL-адрес PDF ]
  18. ^ «NXC — не совсем C» .
  19. ^ «NQC — Не совсем C» .
  20. ^ «PHP: История PHP: Руководство» . www.php.net . Проверено 4 марта 2023 г.
  21. ^ Освоение параллельного программирования с помощью R: освойте надежные функции параллельного программирования R для ускорения вычислений в области обработки данных . Саймон Р. Чаппл, Эйлид Труп, Торстен Форстер, Теренс Слоан. Бирмингем, Великобритания. 2016. с. 156. ИСБН  978-1-78439-462-2 . OCLC   951337124 . {{cite book}}: CS1 maint: отсутствует местоположение издателя ( ссылка ) CS1 maint: другие ( ссылка )
  22. ^ Аюни, Мансур. Начало кольцевого программирования — от новичка до профессионала . Апресс.
  23. ^ «Структуры управления — третий стиль — документация Ring 1.16» .
  24. ^ Команда Ринг (23 октября 2021 г.). «Язык программирования The Ring и другие языки» . Ring-lang.net .
  25. ^ «Информационная страница библиотеки S-Lang» .
  26. ^ «Архивная копия» (PDF) . Архивировано из оригинала (PDF) 5 марта 2016 г. Проверено 11 мая 2015 г. {{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )
  27. ^ «Быстрая эволюция языка программирования» . Гитхаб . 17 октября 2021 г.
  28. ^ «Быстрая эволюция языка программирования» . Гитхаб . 17 октября 2021 г.
  29. ^ «Язык программирования V» .
  30. ^ «Язык программирования Zig» .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 17bd42129d7b285372aed4836f23a46a__1719864660
URL1:https://arc.ask3.ru/arc/aa/17/6a/17bd42129d7b285372aed4836f23a46a.html
Заголовок, (Title) документа по адресу, URL1:
List of C-family programming languages - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)