community to get involved. Visit the <a href="contributing.html">contributing</a>
page if you'd like to help out.
-Q: What pieces Novell be working on?
+Q: What pieces is Novell working on?
A: We will devote most of our resources to work on the pieces which are
on the critical path to release a development and execution
<li> A multi-platform runtime engine: both a JIT engine and an
interpreter exist. The JIT engine runs currently on x86,
- PowerPC and Sparc systems, while the interpreter works on
+ PowerPC Sparc and S390 systems, while the interpreter works on
x86, SPARC, StrongARM, s390 and PowerPC systems.
- The JIT engine is being ported to PowerPC, s390, SPARC and
- amd64 systems as of this time.
+ The JIT engine is being ported to amd64 systems as of this
+ time.
<li> Supports Linux, BSD, MacOS, Windows and Solaris at this point.
Portable.NET's compiler.
<li> Mono's C# compiler has strong error handling and has closer
- adherence to the specification.
+ adherence to the specification with support for definite
+ assignment (required to generate verifiable IL code) and
+ CLS conformance checking.
<li> Mono's C# compiler is written in C# which is easier for new
developers to come in and improve, fix and tune. The Mono
are important for advanced applications, compilers and
dynamic code generation.
- <li> Mono has a <a href="xml-classes">complete managed XML
+ <li> Mono has a <a href="xml-classes.html">complete managed XML
stack</a>: XML, XPath, XML Serializer, XML Schema handling
are fully functional, feature complete and tuned for
performance.
- <li> Mono has a complete cryptography stack: we have a complete
- crypto stack: we implement the 1.0 and 1.1 APIs as well as
- using our fully managed stack to implement the SSL/TLS
- transports.
+ <li> Mono has a <a href="crypto.html">complete cryptography stack
+ </a>: we implement the 1.0 and 1.1 APIs as well as using our
+ fully managed stack to implement the SSL/TLS transports.
<li> <a href="ado-net.html">Extensive database support</a>: Mono
ships with database provides for <a
href="tdsclient.html">SQL Server</a>, <a
href="sqlite.html">SQL Lite</a>, <a
href="mysql.html">MySQL</a>, <a
- href="postgresql">PostgresSQL</A>, <a href="oledb.html">Ole
+ href="postgresql.html">PostgresSQL</A>, <a href="oledb.html">Ole
DB</a> and <a href="odbc.html">ODBC</a>.
<li> Mono includes full LDAP support.
<a name="gcc"></a>
** Mono and GCC
-Q: Are you working on a GCC front-end to C#? A GCC back-end that will
- generate CIL images?
+Q: Are you working on a GCC front-end to C#?
-A: We would love to see a GCC modification that would generate CIL
- images, but there is nothing at this point.
+A: We are not working on a GCC front-end for C#
- The open64 compiler effort from SGI already has modified GCC to
- generate a new intermediate language instead of RTL. This could be
+Q: Will you support C/C++ on the Mono VM?
+
+A:The open64 compiler effort from SGI helps a lot in this direction.
+
+ The Open64 compiler is a modified version of GCC that
+ generates a new intermediate language instead of RTL. This could be
the foundation to generate CIL code, and to implement the upcoming
Managed extensions to C++ from ECMA.
+ Open64 (and other derivative forks of GCC) split the gcc front-ends
+ from the backends by using the WHIRL intermediate representation.
+ Kris has begun the implementation of a translator from WHIRL to CIL.
+
+ So it will be possible to use the GCC compilers to target the CIL.
+
+Q: What about Managed C++?
+
+A: Once a full translator for WHIRL exists, we are interested in
+ looking at expanding the GCC frontends to include extensions for
+ Managed C++.
+
Q: What about making a front-end to GCC that takes CIL images and
generates native code?
A: There is no active work on this area, but Mono already provides
pre-compilation services (Ahead-of-Time compilation).
-Q: But would this work around the GPL in the GCC compiler and allow
- people to work on non-free front-ends?
-
-A: People can already do this by targeting the JVM byte codes (there
- are about 130 compilers for various languages that target the JVM).
<a name="performance"></a>
** Performance
Microsoft falls under the ECMA/ISO submission. Jim Miller at
Microsoft has made a statement on the patents covering ISO/ECMA,
(he is one of the inventors listed in the patent): <a
- href="https://mailserver.di.unipi.it/pipermail/dotnet-sscli/msg00218.html">here</a>.
+ href="http://web.archive.org/web/20030609164123/http://mailserver.di.unipi.it/pipermail/dotnet-sscli/msg00218.html">here</a>.
Basically a grant is given to anyone who want to implement those
components for free and for any purpose.