Языки CLI - это языки компьютерного программирования, которые используются для создания библиотек и программ, соответствующих спецификациям Common Language Infrastructure (CLI). За некоторыми заметными исключениями, большинство языков интерфейса командной строки полностью компилируются в Common Intermediate Language (CIL), промежуточный язык, который может быть выполнен с использованием Common Language Runtime , реализованного .NET Framework , .NET Core и Mono . Для некоторых из этих языков также требуется среда выполнения динамического языка (DLR).
По мере выполнения программы код CIL точно в срок компилируется (и кэшируется) в машинный код, соответствующий архитектуре, на которой выполняется программа. Этот шаг можно пропустить вручную путем кэширования на более раннем этапе с использованием «опережающего» компилятора, такого как Microsoft ngen.exe и параметр «-aot» в Mono.
Известные языки интерфейса командной строки [ править ]
Текущие языки [ править ]
- Ада для .Net : Ада - это язык с несколькими парадигмами, который сильно ориентирован на безопасность кода, ремонтопригодность и правильность. [1]
- C # : наиболее широко используемый язык командной строки [2], имеющий сильное сходство с Java и некоторое сходство с Object Pascal ( Delphi ) и C ++ . Реализации, предоставляемые .NET Framework , .NET Core и Mono .
- C ++ / CLI : версия C ++, включая расширения для использования объектов Common Language Runtime (CLR). Обеспечивает полную поддержку .NET Framework и поддержку библиотек только для .NET Core . Создает код в смешанном режиме, который создает собственный код для объектов C ++. Компилятор предоставлен Microsoft.
- ClojureCLR : порт Clojure для интерфейса командной строки, часть проекта Clojure . [3]
- Cobra : язык командной строки со статической и динамической типизацией , проектированием по контракту и встроенным модульным тестированием .
- Компонентный Паскаль : совместимый с CLIдиалект Оберона . Это строго типизированный язык, унаследованный от Паскаля и Модулы-2, но с мощными объектно-ориентированными расширениями.
- Эйфель : чисто объектно-ориентированный язык, ориентированный на качество программного обеспечения, включает интегрированное проектирование по контракту и множественное наследование. Совместимость с CLI.
- F # : многопарадигмальный язык интерфейса командной строки, поддерживающий функциональное программирование и императивные дисциплины объектно-ориентированного программирования . Вариант ML и в значительной степени совместим с OCaml . Реализации, предоставляемые .NET Framework , .NET Core и Mono .
- F * - язык с зависимой типизацией, основанный на F #.
- Fantom - язык, компилируемый для .NET и JVM
- IronPython : реализация интерфейса командной строки Python с открытым исходным кодом, основанная на среде выполнения динамического языка (DLR).
- IronScheme -реализация схемы, совместимой с R6RS,построенная на DLR
- Limnor Studio : это универсальнаясистема визуального программирования без кода . Цель состоит в том, чтобы позволить пользователям создавать компьютерное программное обеспечение без кодирования на текстовом языке программирования . Его могут расширить разработчики программного обеспечения.
- Oxygene :язык командной строки на основе Object Pascal .
- PeachPie : компилятор PHP для .NET и .NET Core. Преемник Фалангера.
- Phalanger : реализация PHP с расширениями для ASP.NET . Предшественник PeachPie.
- PowerBuilder : может работать с интерфейсом командной строки, начиная с версии 11.1.
- RemObjects Mercury :язык интерфейса командной строки Visual Basic .Net .
- Small Basic : язык программирования на основе BASIC, созданный Microsoft для обучения программированию. Поддерживаемые выпуски предназначены для .NET Framework версий 3.5 и 4.5.
- Silverfrost FTN95 : реализация Fortran 95.
- Swift черезкомпилятор RemObjects Silver и многоплатформенный таргетинг.
- Synergy DBL .NET : объектно-ориентированная CLI-совместимая реализация DBL и DIBOL, созданная Synergex. [4]
- Team Developer : язык приложений SQLWindows (SAL), начиная с Team Developer 6.0.
- Visual Basic .NET ( VB.NET ): переработанный диалект Visual Basic . Реализации, предоставляемые .NET Framework , .NET Core и Mono .
- Visual COBOL : расширенная версия COBOL, перенесенная на .NET Framework и JVM, произведенная Micro Focus . [5]
- PowerShell : объектно-ориентированная оболочка командной строки . PowerShell может динамически загружать сборки .NET, написанные на любом языке интерфейса командной строки. Сама PowerShell использует уникальный синтаксис сценариев и фигурные скобки, как и другие языки на основе C.
- XSharp : X # - это язык разработки с открытым исходным кодом для Microsoft .NET, основанный на языке xBase. Он поставляется в разных вариантах, таких как Core, Visual Objects, Vulcan.NET, xBase ++, Harbor, Foxpro и другие.
Заброшенные или устаревшие языки [ править ]
- A # : реализация Ada в интерфейсе командной строки.
- Аксум :язык параллельного программирования для модели акторов .
- Boo : статически типизированный язык интерфейса командной строки, вдохновленный Python .
- GrGen .NET - язык командной строки для переписывания графов
- IronRuby : реализация Ruby с открытым исходным кодом CLI, построенная на динамической языковой среде выполнения (DLR).
- J # : реализация Java, совместимая с CLI. Компилятор предоставлен Microsoft. J # больше не выпускается. Последняя версия поставлялась с Visual Studio 2005 и поддерживалась до 2015 года.
- JScript .NET : реализация ECMAScript версии 3 винтерфейсе командной строки, совместимая с JScript . Содержит расширения для статической типизации . Устарело в пользу управляемого JScript .
- Управляемый JScript : реализация JScript в интерфейсе командной строки,основанная на среде выполнения динамического языка (DLR). Соответствует ECMAScript версии 3.
- Управляемые расширения для C ++ : версия C ++, предназначенная для среды CLR. Устарело в пользу C ++ / CLI .
- Niecza - CLI-реализация Perl 6 .
- Nemerle : многопарадигмальный язык, похожий на C #, OCaml и Lisp.
Связанные [ править ]
- IKVM.NET : виртуальная машина Java, которая может использоваться для запуска Java и других языков JVM (например, JVM, таких как Groovy , Scala ) при реализациях CLI.
См. Также [ править ]
- Список языков JVM
- .NET Framework , исходная реализация, поддержка которой вскоре будет прекращена.
- Common Language Infrastructure (CLI), открытая спецификация среды выполнения (компонент виртуальной машины) .NET framework
- Common Intermediate Language (CIL), промежуточный язык, который может быть выполнен с использованием реализации CLI.
- Common Language Runtime , компонент виртуальной машины в реализации Microsoft .NET Framework.
- Стандартные библиотеки .NET
- Библиотека базовых классов (BCL)
- Mono , реализация .NET Framework с открытым исходным кодом, используется во многих местах, включая Unity и Xamarin .
- .NET Core , кроссплатформенный преемник .NET Framework с открытым исходным кодом.
Ссылки [ править ]
- ^ "GNAT для .Net" . adacore.com . Проверено 27 марта 2021 .
- ^ Priyadarshini, Маниша (25 июня 2018). «10 самых популярных языков программирования в 2018 году: научитесь программировать» . Fossbytes . Проверено 25 июня 2018 года .
- ^ "ClojureCLR" . GitHub.com . Проверено 28 июня 2012 .
- ^ «Другой язык для Visual Studio и .Net: Synergex выпускает Synergy / DE» . msdn.com .
- ↑ Handy, Alex (20 августа 2015 г.). «COBOL приходит в Visual Studio 2015 - SD Times» . SD Times . Проверено 4 апреля 2017 .