languages 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. * Compilers for other languages
  2. Here are some other free compilers for other languages that
  3. target .NET and should work with Mono with no problem:
  4. <ul>
  5. * <a href="#ComponentPascal">Component Pascal</a>
  6. * <a href="#MonoLogo">MonoLogo</a>
  7. * <a href="#Oberon">Oberon</a>
  8. * <a href="#Forth">Forth</a>
  9. * <a href="#mbas">Mono Basic</a> (Mono's VB.NET compiler)
  10. </ul>
  11. Languages which are known to run, but we have not done a
  12. complete ran of all their regression tests to validate it:
  13. <ul>
  14. * Kylix.NET.
  15. </ul>
  16. Languages we would like to have supported, with links to resources:
  17. <ul>
  18. * <a href="#JavaScript">Java Script</a>
  19. * <a href="#java.html">Java</a>
  20. * <a href="#c">C</a>
  21. </ul>
  22. Some experimental languages:
  23. <ul>
  24. * <a href="#Tachy">Tachy</a> (scheme-like)
  25. * <a href="#python">Python</a>
  26. </ul>
  27. <a name="Java">
  28. ** Java
  29. There is a very interesting project to make a JavaVM for .NET
  30. <a href="http://radio.weblogs.com/0109845/">here</a>.
  31. Zoltan has got IKVM to work with Mono.
  32. <a name="PHP">
  33. ** PHP
  34. Sterling has code to allow PHP developers to use Mono code, in
  35. his <a href="http://www.php.net/~sterling/mono/">site</a>
  36. <a name="MonoLogo">
  37. ** MonoLogo
  38. An implementation of Logo for Mono (and .NET)
  39. The <A href="http://monologo.sf.net">Mono Logo</a> compiler is
  40. hosted in the <a href="ccvs.html">Mono CVS</a> repository
  41. and also available on the <a href="anoncvs.html">AnonCVS</a> mirrors.
  42. <a name="mbas">
  43. ** Mono Basic (Mono's VB.NET compiler)
  44. Work has resumed on the Mono Visual Basic compiler (currently
  45. called mbas). It is part of the standard Mono distribution,
  46. but its still an early compiler.
  47. <a name="Oberon">
  48. ** Oberon
  49. This Oberon compiler is written in Oberon.NET (another self
  50. hosting compiler).
  51. The main site <a href="http://www.oberon.ethz.ch/oberon.net/">http://www.oberon.ethz.ch/oberon.net/</a>
  52. Download:
  53. <a href="http://www.oberon.ethz.ch/oberon.net/download/">http://www.oberon.ethz.ch/oberon.net/download/</a>
  54. Examples:
  55. <a href="http://www.oberon.ethz.ch/oberon.net/examples/">http://www.oberon.ethz.ch/oberon.net/examples/</a>
  56. <a href="http://www.superin.formativ.net/mono/oberon/oberon.zip">http://www.superin.formativ.net/mono/oberon/oberon.zip</a>
  57. <a name="ComponentPascal">
  58. ** Component Pascal
  59. The Component Pascal compiler: <a
  60. href="http://www2.fit.qut.edu.au/CompSci/PLAS/ComponentPascal">Home
  61. Page</a>, you can <a
  62. href="http://www2.fit.qut.edu.au/CompSci/PLAS/ComponentPascal/gpcp1.1.4-netRTM.zip">
  63. download it</a>
  64. <a name="Forth">
  65. ** Delta Forth
  66. The Delta Forth.NET project: <a
  67. href="www.dataman.ro/dforth">Home
  68. Page</a> and <a href="http://www.dataman.ro/dforth/index.html">more
  69. details here</a>.
  70. <a name="Tachy">
  71. ** Tachy
  72. A subset of Scheme language called <a
  73. href="http://radio.weblogs.com/0101156/stories/2002/03/19/tachy.html">Tachy</a>
  74. <a name="Python">
  75. ** Python
  76. <a href="mailto:[email protected]">Brian Lloyd</a> is
  77. working on linking the Python runtime with the .NET runtime.
  78. More information on the PS.NET project can be found <a
  79. href="http://www.zope.org/Members/Brian/PythonNet/index_html">here</a>.
  80. An FAQ document is available <a
  81. href="http://www.zope.org/Members/Brian/PythonNet/FAQ.html">here</a>.
  82. * Missing languages
  83. Here is a list of a few languages that we would like to see
  84. supported. We will try to maintain a set of links here with
  85. technical information for those interested in porting,
  86. implementing or adapting a compiler for any of these
  87. languages:
  88. <a name="JavaScript">
  89. * Java Script
  90. The Mozilla project has an implementation of JavaScript
  91. written in Java called <a
  92. href="http://www.mozilla.org/rhino/">Rhino</a>.
  93. You could port this code from Java to C#.
  94. Note that since JavaScript allows for evaluation at runtime,
  95. the compiler has to be built as a class that can be invoked at
  96. runtime.
  97. <a name="c">
  98. * C
  99. Ideally GCC could be modified to generate CIL, but it is a
  100. big task. That would give us various compilers in one pass.
  101. <a href="http://www.cs.princeton.edu/software/lcc">LCC</a> 4.2
  102. has been recently released. This release adds support for compiling
  103. ANSI C programs to CIL. Note that the CIL support only works on Win32
  104. right now, but should be easy to convert to Mono/other architectures.
  105. LCC is not an open source compiler, but it is free as long as you
  106. do not profit from selling it.
  107. <a name="Java">
  108. * Java
  109. We have a <a href="java.html">separate page</a> for Java.