tools 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. * Tools
  2. We need a number of tools to make people productive using a
  3. Mono-based solution. Some of these tools can be developed on
  4. Windows before Mono is fully finished.
  5. All of these tools should be written using C#.
  6. For the tools that are typically command line tools: Try to
  7. write these as components that could load their input from
  8. streams or collections of streams, and implement the command
  9. line tools as wrappers around those classes.
  10. For example, we will be making the C# compiler a component
  11. that could be reused by applications that might have a use for
  12. the various bits of the compiler (either to embed the
  13. compiler, or reuse the code generator part of it).
  14. This is important so that these components (compiler,
  15. assembler, linker, etc) can be integrated later into the
  16. visual development environment (hopefully with the help of the
  17. SharpDevelop hackers).
  18. TODO=ilasm,IL Assembler
  19. ** IL Assembler.
  20. This assembler should basically take as input a file
  21. containing IL bytecodes as specified in the `Partition II' of
  22. the ECMA spec, and produce a binary file.
  23. TODO=al,Assembly Linker
  24. ** Assembly Linker.
  25. This tool is used to construct assemblies, which are basically
  26. deployment units for CLI executables.
  27. TODO=debugger,Debugger
  28. ** Debugger
  29. We will need a debugging API to debug CLI applications and
  30. then a debugger component that can be used in an IDE
  31. environment.
  32. TODO=ide,Integrated Development Environment
  33. ** Integrated Development Environment
  34. There is already a project to create a C# development
  35. environment: <a
  36. href="http://www.icsharpcode.net/OpenSource/SD/default.asp">SharpDevelop</a>.
  37. People should work with the SharpDevelop hackers to produce a
  38. unified development environment.
  39. Please work with the SharpDevelop hackers to build a good IDE.
  40. We will work on creating an embedable compiler component and
  41. an embeddable debugger component that can be used withing
  42. SharpDevelop
  43. TODO=hbrowser,Help Browser
  44. ** Help Browser
  45. We need a good help browser that can be used to browse
  46. documentation. Ideally this help browser can accept as input
  47. XML Docbook input and an assorted set of file formats
  48. (Microsoft Help, Unix manual pages, Unix Info pages)
  49. Look at the GNOME DevHelp for a good set of ideas on how to
  50. implement this.