[HTML 2.0]   [PRINTER FRIENDLY]

 

DotGNU Project - GNU Freedom for the Net

 

 

 

 

 

 


 

Acronyms Explained

Acronmyns related to Portable.NET

cscc
A compiler collection which can compile C and C# to IL or Java bytecode. This is part of DotGNU Portable.NET
IL
Intermediate Language. This is the bytecode format that is used to represent compiled programs. It has sufficient instructions to support many programming languages, including C#.
CIL
Common Intermediate Language. This term is used in the ECMA standards. Prior to ECMA standardization, it was known as IL. We use the two acronyms interchangeably.
MSIL
Microsoft Intermediate Language. This is exactly the same as CIL, but some media reports have called it "MSIL" for some reason.
CTS
Common Type System. The standard type system that is used to represent programming language constructs such as objects and types. A language doesn't have to use the CTS, but doing so improves interoperability.
CLS
Common Language Specification. A set of conventions for types and libraries that promote interoperability between programming languages.
CLR
Common Language Runtime. The engine that executes CIL programs. In DotGNU Portable.NET's case, this is the "ilrun" program.
CLI
Common Language Infrastructure. The complete system, comprising CIL, CTS, CLS, and CLR.
JVM
Java Virtual Machine. The bytecode system of the Java language.
C#
Pronounced "C-Sharp". The primary programming language that is used with the CLI, but by no means the only such language.
PE/COFF
Portable Executable / Common Object File Format. This is the binary format used by the 32-bit Microsoft Windows system to represent compiled applications. The CLI extends PE/COFF with new sections containing CIL definitions.
ECMA
European Computer Manufacturer's Association. The standards body that Microsoft has chosen to standardize CLI. The standards are here:
http://www.ecma-international.org/publications/standards/ECMA-334.HTM (C#)
http://www.ecma-international.org/publications/standards/ECMA-335.HTM (CLI).
If you wish to contribute to the C# library, you will also need the following file: ftp://ftp.ecma.ch/ecma-st/Ecma-335-xml.zip. Unpack this zip file and then use the "csdoc2html" program (which you can find in the csdoc directory of the pnet package of DotGNU Portable.NET) DotGNU to convert the XML file into HTML, so that you can view its contents more easily. ECMA specifies the bare minimum necessary to get a Common Language Runtime (CLR) to work. However, this bare minimum is not very useful for realistic C# applications. Microsoft's .NET Framework SDK contains a lot more classes in its base class libraries. Because we wish to be (more or less) compatible with Microsoft's .NET offerings, we have to provide more than what ECMA specifies.
gcc
The GNU Compiler Collection, which currently contains front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages. GCC is good for creating native code for register-based CPU's, but adapting it to generate IL bytecode would not be an easy task. (The right way to do it would be to add, besides the "Register Transfer language" which is used internally in gcc, in addition a "Stack Transfer Language" (STL), that passes all languages through a separate code generator that knows about stack machines. Then we can write STL back-ends for IL and JVM bytecode. Both gcj (the GNU compiler for Java) and DotGNU would benefit from this.)

Acronmyns related to DotGNU webservices

RDF
The Resource Description Framework, a W3C recommendation.
FOAF
The Friend of a Friend (FOAF) RDF vocabulary is described using W3C RDF Schema and the Web Ontology Language.
DGEE
The DotGNU Execution Environment.

You are invited to add your comments concerning this at the appropriate page of the DotGNU Wiki

 

 

 

Verbatim copying and distribution of this entire article are permitted in any medium or format, provided this notice is preserved.

This page is maintained by Norbert Bollow <nb@SoftwareEconomics.biz> with support from the DotGNU Developers mailing list.