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
|