- List of CLI languages
-
Contents
CLI Languages are computer programming languages that are used to produce libraries and programs that conform to the Common Language Infrastructure specifications. With some notable exceptions, most CLI languages compile entirely to the Common Intermediate Language (CIL), an intermediate language that can be executed using an implementation of CLI such as the Common Language Runtime (CLR), a part of the Microsoft .NET Framework, Mono, or Portable.NET.
As the program is being executed by the CLR, the CIL code is compiled and cached, just in time, to the machine code appropriate for the architecture on which the program is running. This last set can be shortcut manually and cached at an earlier stage using an "ahead of time" compiler such as Microsoft's ngen.exe and Mono's "-aot" option.
CLI languages
- Common CLI Languages
- A#: CLI implementation of Ada.
- Boo: A statically typed CLI language, inspired by Python.
- C#: Most widely used CLI language, bearing similarities to Java, Delphi and C++. Implementations provided by .NET Framework, Portable.NET and Mono.
- C++/CLI: A version of C++ including extensions for using CLR objects. Implementation provided only by .NET Framework. Can produce either CIL-based managed code or mixed-mode code that mixes both managed code as well as native code. The compiler is provided by Microsoft.
- Cobra: A CLI language with both static as well as dynamic typing, design-by-contract and built-in unit testing.
- Component Pascal: A CLI-compliant Oberon dialect. It is a strongly typed language in the heritage of Pascal and Modula-2 but with powerful object-oriented extensions.
- F#: A multi-paradigm CLI language supporting functional programming as well as imperative object-oriented programming disciplines. Variant of ML and is largely compatible with OCaml. The compiler is provided by Microsoft. The implementation provided by Microsoft officially targets both .NET and Mono.
- IronPython: An open-source CLI implementation of Python, built on top of the DLR.
- IronRuby: An open-source CLI implementation of Ruby, built on top of the DLR.
- IronLisp: A CLI implementation of Lisp. Deprecated in favor of IronScheme.
- J#: A CLS-compliant implementation of Java. The compiler is provided by Microsoft. Microsoft has announced that J# will be discontinued.
- JScript .NET: A CLI implementation of ECMAScript version 3, compatible with JScript. Contains extensions for static typing. Deprecated in favor of Managed JScript.
- L#: A CLI implementation of Lisp.
- Managed Extensions for C++: A version of C targeting the CLR. Deprecated in favor of C++/CLI.
- Managed JScript: A CLI implementation of JScript built on top of the DLR. Conforms to ECMAScript version 3.
- Nemerle: A multi-paradigm language similar to C#, OCaml and Lisp.
- Oxygene: An Object Pascal-based CLI language.
- P#: A CLI implementation of Prolog
- Phalanger: An implementation of PHP with extensions for ASP.NET
- Phrogram: A custom CLI language for beginners and intermediate users produced by The Phrogram Company
- PowerBuilder: Can target CLI since version 11.1.
- Team Developer: SQLWindows Application Language (SAL) since Team Developer 6.0.
- VBx: A dynamic version of VB.NET built on top of the DLR. See VBScript and VBA as this could be thought of being used like a Managed VBScript (though so far this name has not been applied to this) and could be used to replace VBA as well.
- VB.NET: A redesigned, object-oriented dialect of Visual Basic. Implementations provided by .NET Framework and Mono.
- Windows PowerShell: An object-oriented command-line shell. PowerShell can dynamically load .NET assemblies that were written in any CLI language. PowerShell itself uses a unique scripting syntax, uses curly-braces, similar to other C-based languages.
- Other CLI languages
- Active Oberon - a CLI implementation of Oberon
- APLNext - a CLI implementation of APL
- AVR.NET - a CLI implementation of RPG
- clojure-clr - a CLI implementation of Clojure
- Delphi.NET - a CLI language implementation of the Delphi language.
- DotLisp - a CLI language inspired by Lisp
- Delta Forth .NET - a CLI implementation of Forth from Dataman
- EiffelEnvision - a CLI implementation of Eiffel
- Fantom - a language compiling to .NET and to the JVM
- Fortran .NET: Fortran compiling to .NET
- Gardens Point Modula-2/CLR - an implementation of Modula-2 that can target CIL
- GrGen.NET - a CLI language for graph rewriting
- IoNET - a CLI implementation of Io
- IronScheme - a R6RS-compliant Scheme implementation built on top of the DLR
- Ja.NET - an open source implementation of a Java 5 JDK (Java development tools and runtime) for .NET
- Common Larceny- a CLI implementation of Scheme
- LOLCode.NET - a CLI implementation of LOLCODE
- Mercury on .NET - an implementation of Mercury that can target CIL
- Net Express - a CLI implementation of COBOL
- NetCOBOL - a CLI implementation of COBOL
- COBOL2002 for .NET Framework - a CLI implementation of COBOL
- COBOL2002 for .NET Framework - a CLI implementation of COBOL
- OxygenScheme - a CLI implementation of Scheme
- #S - A CLI language that implements Scheme (a port of Peter Norvig's Jscheme).
- #Smalltalk - a CLI implementation of Smalltalk
- sml.net - a CLI implementation of Standard ML
- Synergy.NET - a CLI implementation of DIBOL
- Visual COBOL - a CLI implementation of COBOL
- X# - a CLI implementation of ASM developed for Cosmos. X# was also the codename for the XML-capabilities of Cω.
- Zonnon, Yet another CLI-compliant Oberon dialect.
Related
- IKVM.NET: An implementation of the Java Virtual Machine that runs on top of the CLR the can be used to run Java and other languages that target the JVM like Groovy and Scala.
See also
References
External links
Categories:- .NET framework
- .NET programming languages
- Lists of programming languages
Wikimedia Foundation. 2010.