Список .NET-языков | это... Что такое Список .NET-языков? (original) (raw)
Эта страница — информационный список.
Языки программирования .NET (Языки с поддержкой CLI или CLI-языки) — компьютерные языки программирования, используемые для создания библиотек и программ, удовлетворяющих требованиям Common Language Infrastructure. За исключением некоторых серьёзных оговорок, большинство CLI-языков целиком компилируются в Common Intermediate Language (CIL), промежуточный язык, который может быть оттранслирован непосредственно в машинный код при помощи виртуальной машины Common Language Runtime (CLR), являющуюся частью Microsoft .NET Framework, Mono и Portable.NET.
Во время выполнения программы в среде CLR её CIL-код компилируется и кэшируется на лету в машинный код, соответствующий архитектуре, на которой выполняется программа. Этот последний этап может быть принудительно сокращен, а кэширование может выполняться на предыдущем этапе при помощи «опережающего» (англ. ahead of time) компилятора, такого как например, ngen.exe от Microsoft или ключа «-aot» в Mono.
Список языков
Представленный ниже список языков упорядочен относительно алфавитного написания названий языков в их латинографическом написании.
Язык | Год[1] | Предок | Разработчик | Сайты | Краткая информация |
---|---|---|---|---|---|
#Smalltalk | 2003 | Smalltalk | Джон Брент Дон Робертс | www.refactory.com | Компилятор позволяет использовать классы обычных .NET-программ. Фактически, большинство Smalltalk-классов стандарта ANSI, поддерживаемых #Smalltalk, являются лишь обёртками вокруг стандартных .NET-классов. |
A# | 2005 | Ада | Мартин Карлайл | martincarlisle.com | Свободно распространяется Департаментом Информатики при Военно-воздушной академии США. |
Active Oberon | Оберон | oberon.ethz.ch | |||
asm80386 | 2001 | ASP язык ассемблера | Бьярке Виксое | www.viksoe.dk | При помощи компилятора «ASP.NET: ASM to IL» (ASMIL) компилируется язык ассемблера для Intel 80386 в IL (затем — в ASP.NET). |
AsmL | Microsoft Research | research.microsoft.com | |||
AVR (ASNA Visual RPG) | 2001 | RPG/Caviar | ASNA | www.asna.com | AVR for .NET представляет собой, по сути, компилятор языка RPG для .NET-платформы. AVR позволяет обновлять существующие RPG-прриложения, разрабатывать веб-сервисы с поддержкой сервис-ориентированной архитектуры. |
B# | 2009 | Си, C++, Java | Майкл де Чемплейн | bsharplanguage.org | Сильно урезанная версия языка C# (иногда описывается как гибрид языков C++ и Java), спроектированная специально для встраиваемых программируемых систем. |
BETA.Net | 2004 | BETA | Кристен НюгордОле Леманн МадсенБиргер Мёллер-ПедерсенБент Бруун Кристенсен | daimi.au.dk | Строго типизированный объектно-ориентированный язык с поддержкой функционального и процедурного программирования. Кроме .NET, реализована поддержка JVM. |
Boo | 2003 | Python, C# | Родриго Б. де Оливейра | boo.codehaus.org | CLI-язык со статической типизацией, унаследовавший идеи языка Python. |
Brainfuck | Урбан Мюллер | ||||
C++/CLI | 2005 | C++ | Microsoft | Версия языка C++, включающая в себя раширения для поддержки объектов CLR. Реализация существует только для платформы .NET Framework. Код может компилироваться в основанный на CIL управляемый код либо смешанный код, объединяющий как управляемый код, так и естественный код. | |
C# (ECMA 334)[2] | 2000[3] | C++ | Андерс Хейлсберг | Самый широко используемый CLI-язык, схож с языками Java, Delphi и C++. Реализации языка поддерживаются платформами .NET Framework, Portable.NET и Mono. | |
Cω | 2005 | C# | Microsoft Research | research.microsoft.com | Модификация C#, основной целью которой было упрощения доступа к хранилищам данных типа баз данных и XML-файлов. Cω повлиял на технологию LINQ. |
Cat (англ.) | Joy | Кристофер Диггинс | cat-language.com | Стэк-ориентированный язык программирования с минималистичным синтаксисом. | |
CFML | 2002 | HTML | Джереми АллерАлан Вильямсон | newatlanta.com | Поддержка .NET возможна при помощи движка BlueDragon |
Chrome | Паскаль | RemObjects Software | В ходе своего развития эволюционировал в Oxygene. | ||
CIL/MSIL/IL | 1999 | языки ассемблера | Microsoft | Объектно-ориентированный ассемблер-подобный низкоуровневый промежуточный язык, в который компилируются все программы, написанные на .NET-языках высокого уровня. | |
Clarion# | 2009 | Clarion | SoftVelocity | softvelocity.com | Язык получил обозначение Clarion#, тогда как IDE для него обозначается как Clarion.NET. Заявлена поддержка WinForms, Web Forms, Compact Forms, возможностей платформы .NET Framework 2.0 с поддержкой 64-битных платформ[4]. |
Clojure | 2009 | Лисп | Рич Хикки | Clojure.org github.com | язык программирования общего назначения с поддержкой разработки в интерактивном режиме, поощряющий функциональное программирование, и упрощающий поддержку многопоточности. |
Кобол | Может компилироваться под .NET при помощи среды разработки Net Express. | ||||
Cobra | Cobra Language LLC | CLI-язык, подерживающий как статическую типизацию, так и динамическую. Есть поддержка контрактного программирования и встроенное модульное тестирование. | |||
Common Larceny | 2004 | Scheme | Райан КулпепперДжо МаршаллДейл Вейланкурт Маттиас Феллейсен | larcenists.org | Поддержка стандартов ERR5RS и R6RS. Может взаимдействовать с другими CLR-языками благодаря поддержке т. н. JavaDot-нотации языка JScheme, которая реализуется при помощи «отражения» (reflection), создавая интерфейсы Scheme. |
cscc | Си | ||||
CULE.NET | Visual Objects/XBase | Род Да Сильва | SoftwarePerspectives | ||
Delphi | Паскаль | CodeGear | Delphi.NETDelphi Prism | ||
Delta Forth .NET | Форт | Dataman | www.dataman.ro | ||
DotLisp | 2003 | Лисп | Рич Хикки | dotlisp.sourceforge.net | Лисп-подобный язык с глубокой интеграцией в платформу .NET[5] |
Dyalog for Windows | 1999[6] | АПЛ | Гитте КристенсенМортен Кромберг(Dyalog Ltd.) | www.dyalog.com stores.lulu.com/dyalog | Язык объединил традиционные синтаксисы как АПЛ, так и стандартный синтаксис .NET-языков. |
dylan.NET | Дилан Борг dylan.NET Team | Launchpad.net, Gitorious.org | Язык с поддержкой среды CLR, схожий с MSIL. Работает на платформе .NET, планируется добавить поддержку Mono для обеспечения работы на всех платформах этого проекта. | ||
Eiffel.NET | 12 июля 2000[7] | Eiffel (ECMA TC39-TG4) | Interactive Software Engineering, Microsoft | msdn.microsoft.com | [8] |
EiffelEnvision | Eiffel (ECMA TC39-TG4) | ||||
eXtensible C# (XC#) | C# | Resolvecorp | |||
F# | OCaml | Дон Сайм (Microsoft Research) | Мультипарадигмальный CLI-язык, поддерживающий как функциональную, так и императивную парадигмы объектно-ориентированного программирования. Является вариантом языка ML и обладает большой совместимостью с OCaml. Компилятор поддерживается корпорацией Microsoft. | ||
Фантом | Брайан ФрэнкЭнди Фрэнк | Язык, который может компилироваться как для .NET, так и для JVM. | |||
FOIL | Лисп | ||||
Fortran .NET | Фортран | Lahey Computer Systems, IncСэлфорд | www.lahey.com | ||
Gardens Point Component Pascal (GPCP) | Компонентный Паскаль | QUT Distributed Systems Technology Centre Microsoft | plas.fit.qut.edu.au | Компилируется под .NET при помощи компилятора gpcp. | |
Gardens Point Modula (GPM) | Модула-2 | Programming Languages and Systems Group (Квинслендский Технологический Университет в Брисбене) | plas.fit.qut.edu.au | Семейство компиляторов GPM было создано в ходе проекта по созданию единой реализации языка Модула-2, способной работать на различных ОС. | |
GrGen.NET | 2007[9] | GrGen | Университет Карлсруэ IPD | www.grgen.net | CLI-язык для перепостроения графов |
Haskell | VHS | ||||
IKVM.NET | 2002 | Java, C# | Йеройен Фрийтерс (Sumatra Software) | www.ikvm.net | |
IoNET (Io for .NET) | 2008[10] | Io | Олег Андреев Семён Новиков Олег Смирнов Максим Сохацкий | synrc.com | Прототипный язык программирования, в котором упразднено понятие класса. Все экземпляры создаются в системе механизмом клонирования от первого созданного объекта в системе, который называют прототипом. Прототипы находятся в общесистемной таблице прототипов[11]. |
IronJS | JavaScript | Фредрик Хольмстрём | |||
IronLisp | Лисп | Был объявлен устаревшим в пользу IronScheme | |||
IronPython | Python | ironpython.net | CLI-версия языка, созданная с поддержкой DLR | ||
IronRuby | Ruby | ironruby.net | CLI-версия языка, созданная с поддержкой DLR | ||
IronScheme | Scheme | R6RS-совместимая реализация языка Scheme, построенная на основе DLR. | |||
J# | Java | Microsoft | Компилятор был разработан корпорацией Microsoft. Она же объявила о прекращении поддержки языка. | ||
Ja.NET | Java | www.janetdev.org | Реализация Java 5 JDK (среда исполнения и инструменты разработки Java) с открытым исходным кодом на .NET. | ||
JNBridge | Java | www.jnbridge.com | |||
JScript .NET | JavaScript | Microsoft | CLI-реализация стандарта ECMAScript версии 3, совместимая с JScript. Содержит расширения для поддержки статической типизации. Объявлен устаревшим в пользу «Managed JScript». | ||
L# | Лисп | Роб Блакуэлл | lsharp.org | ||
lcc | lcc | ||||
Lego.NET | LEGO Mindstorms | ||||
leXico | |||||
Лого | |||||
LOLCode.NET | LOLCODE | code.google.com | |||
Lua.NET | lua.inf.puc-rio.br | ||||
M# | |||||
Managed C++ | C++ | Microsoft | Версия языка C++, предназначенная для исполнения в среде CLR. Разработка и поддержка отменены в пользу C++/CLI. | ||
Managed JScript | JavaScript | Microsoft | CLI-реализация языка программирования JScript, построенная на Dynamic Language Runtime. Соответствует ECMAScript третьей версии. | ||
Metaphor | C# | sky.fit.qut.edu.au | |||
Mercury on .NET | Mercury | cs.mu.oz.au | |||
MixNet | MIXAL | ||||
Mondrian | |||||
Multiprocessor C# (MC#) | C# | u.pereslavl.ru | |||
Nemerle | nemerle.org | Мульти-парадигменный язык программирования, похожий на C#, OCaml и Лисп. | |||
NetCOBOL | Кобол | Fujitsu | netcobol.com | ||
Ook# | Ook! | bluesorcerer.net | |||
Oxygene | Object Pascal | RemObjects Software | |||
OxygenScheme | Scheme | sourceforge.net | |||
Oz | |||||
P# | Пролог | Джонатан Дж. Кук | dcs.ed.ac.uk | ||
Pan# | |||||
Паскаль | TMT | ||||
Perl.NET | Perl | ||||
Perl# | Perl | Джошуа Тауберер | razor.occams.info | ||
Phalanger | PHP | CodePlex | Реализация PHP с расширениями для поддержки ASP.NET. | ||
PHP Sharp | 2003 | PHP | sourceforge.net | ||
PHP4Mono | 2006 | PHP | sourceforge.net | ||
Phrogram | Kids Programming Language (KPL) | phrogram.com | Масштабируемый CLI-язык для новичков и опытных пользователей | ||
PL/IL | PL/I | synrc.com | |||
Polyphonic C# | C# | Microsoft Research | research.microsoft.com | ||
PowerBuilder | Sybase | Среда разработки и язык программирования, поддерживающий CLI начиная с версии 11.1. | |||
PowerShell | Shell-команды | Microsoft | Объектно-ориентированная оболочка операционной системы с интерфейсом командной строки. PowerShell может динамически загружать сборки .NET, которые были написаны на любом из CLI-языков. PowerShell использует уникальный скриптовый синтаксис и широко использует фигурные скобки, наподобие языков с C-подобным синтаксисом. | ||
Prolog.NET | Пролог | Али М. Ходрож | prolog.hodroj.net | ||
QuickBasic for .NET | Basic | ||||
RDNZL | Лисп | ||||
Ruby.NET | Ruby | ||||
Ruby/.NET Bridge | Ruby | ||||
RubyCLR | Ruby | ||||
S# | Smalltalk | ||||
Scala | scala-lang.org | ||||
Scheme.NET | Лисп/Scheme | ||||
Script.NET / S# | JavaScript | Петро Процык | protsyk.com | свободный скриптовый язык с JavaScript-подобным синтаксисом, разработанный сотрудником Microsoft Петром Процыком | |
sharp.scheme (#S) | 2008 | C# Scheme | archvilledevel | sharpscheme.berlios.de developer.berlios.de | Порт языка JScheme, разработанного Питером Норвигом, на платформу .NET. Проект закончился неудачей (компилятор так и не был выпущен). |
Sing# | 2005 | C# | Microsoft Research | research.microsoft.com | Язык программирования с поддержкой параллелизма, является расширением языка программирования Spec#, который, в свою очередь, является расширением языка C#. Был создан для разработки операционной системы Singularity. |
Smalltalk and .NET | Smalltalk | ||||
sml.net | Standard ML | cl.cam.ac.uk | |||
Spec# | 2004 | C#, Eiffel | Microsoft Research | research.microsoft.com specsharp.codeplex.com | Расширение языка C# путем добавления поддержки контрактного программирования, предусловий, постусловий и объектных инвариантов. |
Tachy | Scheme (R5RS) | Кен Роулингс | kenrawlings.com | ||
TickleSharp | Tcl/Tk | ||||
VB.NET[12] | Visual Basic | Microsoft | Полностью перепроектированная объектно-ориентированная версия Visual Basic. Реализована на .NET Framework и Mono. | ||
VBx | Visual Basic | Microsoft | динамическая версия of Visual Basic .NET, построенная на Dynamic Language Runtime. Предназначена для замены VBScript и VBA. | ||
Visual APL | 2005[13] | АПЛ | APLNow, LLC (APL2000) | www.apl2000.com www.aplnext.com www.visualapl.com | Изначально разрабатывался под VS2005, впоследствии была выпущена версия для VS2008. Язык унаследовал синтаксис как языка АПЛ, так и заимствовал у ECMA-стандарта языка C#. Поддерживает объектно-ориентированный подход, интерактивную интерпретацию исходного кода, статическую компиляцию, позволяющую создавать динамические библиотеки (dll) и исполнимые файлы (exe), вызываемые из других .NET-языков[14]. |
Visual COBOL | Кобол | Micro Focus | microfocus.com | ||
Vulcan.NET | Visual Objects/XBase | govulcan.net | |||
X# | Язык ассемблера | CLI-реализация специального языка ассемблера, разработанного для операционной системы Cosmos. X# также был кодовым именем для XML-возможностей Cω. | |||
Zonnon | 2003 | Паскаль, Модула-2 Оберон | Юрг Гуткнехт | zonnon.ethz.ch software.unn.ac.ru | Наследник языка Модула-2, расширенный средствами сборки мусора, объектного программирования, параллельного программирования (мультипрограммирования), переопределения операторов и обработки исключений. Изначально создавался для платформы .NET. |
См. также
- IKVM.NET: основанный на CLR компилятор байт-кода Java. Может использоваться для запуска Java- и Groovy-программ на CLR.
- Список JVM-языков
Примечания
- ↑ Имеется в виду год начала поддержки платформы .NET
- ↑ Эндрю Троелсен Язык программирования С# 2008 и платформа .NET 3.5 = Pro C# 2008 and the .NET platform / Под редакцией Ю.Н. Артеменко. — 4-е издание. — М.: Вильямс, 2010. — 1344 с. — ISBN 978-5-8459-1589-4
- ↑ Microsoft готовит язык с ароматом Java (рус.)
- ↑ Clarion.Net Highlights (англ.)
- ↑ CSharpener DotLisp - A Lisp Dialect for .NET (англ.). weblogs.asp.net (29 сентября 2003 года). Архивировано из первоисточника 2 июля 2012. Проверено 14 декабря 2010.
- ↑ Introduction (англ.)
- ↑ Eiffel for .NET: The power of Eiffel for the Microsoft .NET framework
- ↑ Eiffel for .NET: An Introduction
- ↑ History (англ.)
- ↑ Io on .NET? (англ.)
- ↑ Synrc Io Language CLR. Введение (рус.)
- ↑ Билл Ивьен, Джейсон Берес Visual Basic .NET. Библия пользователя = Visual Basic .NET. Bible / Под редакцией А. В. Ковалевского. — М.: Вильямс, 2002. — 1024 с. — ISBN 5-8459-0395-5
- ↑ APLNow LLC and Cognos Announce Asset Purchase (англ.)
- ↑ What is Visual APL? (англ.)
Ссылки
- .NET Powered: List of .NET languages (англ.)
- .NET Language Sites (англ.)
- Programmiersprachen für das .NET Framework (нем.)
- Создание компилятора языка для .NET Framework (рус.)