| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- * Ideas
- Here are a few ideas of tools, classes and projects that you
- could start. More are forthcoming.
- <a name="runtime">
- ** Runtime
- We need a verifier that can be run on an executable (assembly)
- and tells whether the metadata for the executable is correct
- or not. It should report any anomalies.
- For a list of anomalies in assemblies, check the various assertions
- that are described on the ECMA documentation.
- This will help test our generated executables and can be also
- used as an external verifier.
- <a name="classes">
- ** Classes
- <ul>
- TODO=jxta,The JXTA Peer to Peer foundation
- * Implement a JXTA protocol implementation:
- <a href="http://www.jxta.org">http://www.jxta.org</a>
- TODO=camel,Mail API
- * Implement a Mail API, similar to Camel or JavaMail (Camel has
- significant architecture features that are required on a real
- mailer).
- You can check the current C
- <a href="http://cvs.gnome.org/bonsai/rview.cgi?dir=evolution%2Fcamel">
- Camel implementation</a>.
- Such an implementation could be used both with
- Microsoft .NET and Mono.
- TODO=multimedia
- * Interfacing to Multimedia systems. You might want
- to look into the Quicktime API. I know <a
- href="mailto:[email protected]">Vladimir</a> has
- researched the problem before
- TODO=gtk,Gtk+ wrappers for Mono and .NET
- * Wrap the Gtk+ API. This is simple and can be done
- on Windows as Gtk+ 2.0 works on Windows.
- This work can also be used on Windows and will
- enable developers on Windows to use some of Gtk+'s
- advanced features.
- The idea is to wrap the Gtk+ API and allow us to
- build GUI applications using Gtk+ and in the future
- other Gtk+-based libraries from Mono (Gal, GtkHTML).
- There is extensive knowledge on wrapping Gtk+ in
- other languages (this has been done this for Perl,
- Python, Java, Scheme, Haskel and other languages in
- the past).
- </ul>
- <a name="projects">
- ** Projects
- <ul>
- TODO=xmlStorage,
- * Implement an xmlStorageSystem for the CLI:
- <a href="http://www.soapware.org/xmlStorageSystem">
- http://www.soapware.org/xmlStorageSystem</a>
- TODO=guavac,Java compiler for .NET
- * You could take one of the existing Java compilers
- (Guavac comes to mind as it is so nice) and modify
- it to generate .NET code rather than JVM byte
- codes.
- This should be a pretty straightforward task.
- Guavac has the advantage of being written in C++ and
- it could be compiled with the Microsoft Managed C++
- compiler and produce a .NET executable with it.
- TODO=CORBA,CORBA implementation
- * Build a CORBA interoperability engine for the CLR.
- You do not need to do all of the work, just talking
- the protocol will get us a long way (<a
- href="http://www.omg.org">The OMG site</a> has the
- CORBA specs).
- Get in touch with David Taylor (dtaylo11 at bigpond
- dot net dot au) as he has been working on this
- project.
- TODO=Bonobo,Bonobo for Mono
- * Once CORBA is done, implement the Bonobo interfaces
- to allow people to use Bonobo components in Mono and
- Mono components with Bonobo. The best of both worlds!
- TODO=moniker,Object Naming System with Monikers
- * A naming space for Mono. An object naming space is
- a very powerful tool. Bonobo implements a moniker
- system that is more powerful than the original
- moniker concept that was pioneered by COM/OLE in the
- Microsoft world.
- Our implementation builds on a concept, and we have
- made it simpler, more powerful, more extensible and
- a much better mechanism than the equivalent monikers
- on Windows.
- Implementing Mono monikers would benefit both
- Windows users using .NET and Mono users on Unix and
- Windows.
- Here is <a
- href="http://primates.ximian.com/~miguel/monikers.html">an
- overview of the moniker system</a> in Bonobo.
- </ul>
|