Hi!
This is bit offtopic - but if this project is succesfull, then this might speed up things and get C# and other .NET languages for SL scripters.
We are looking for people with CLI/MSIL experience - or people who are motivated and quick learners- to join the project that is writing TEST SUITE for Mono project's metadata verifier. Also persons with less programming experience are very welcome to join the project - there are lot's of things to do that don't require any programming skills!
Metadata is part of compiler generated code that is very similar with Java bytecode. For example new types are introduced for runtime environment through metadata. It is also used to many other tasks that normal user never see – but are important for running runtime environment.
Currently Mono is trusting that metadata is not hostile and compiler is taking all responsibilities to write consistent metadata. However, this can't guaranteed anymore in sandbox like environments where random user – possible hostile user - is allowed to upload her code directly to runtime environment. User's compiler may be faulty – or user is purposely trying to compromise runtime environment's stability and security by uploading faulty code. Metadata verifier's task is detect this kind faulty metadata and prevent it's loading and running in environment.
For Mono project, metadata verifier is important part of Moonlight project (open sourced version from M$ Silverlight and competitor for Flash). For Second Life and Open Sim, it would finally allow some real programming languages used for scripting (C# and other languages supported by Mono runtime environment). Although it is already possible to use other languages in Open Sim scripting.
Right now project is doing very boring task called "reading specifications" and collecting rules that are related to metadata verifier to very-big-ebil-list that we can use to generate test cases. When this is done, we hopefully can start writing test cases for metadata verifier. There is already working Mono metadata verifier that can analyze lower level logical format of metadata, but mostly due to lack of tests development has stopped to those tracks. Writing of test cases needs some lower level understanding of the runtime environment - that is where CLI/MSIL experience comes very handy.
To get more information about project:
- VISIT in our Wiki: http://www.xugumadison.org/csharp-sl/index.php?title=Main_Page (includes meeting minutes, project plan, etc)
- CONTACT to me in SL (Imaze Rhiano) or send mail for me
- JOIN our SL group "C# Scripters".
If you want know about more Metadata verifier
- READ http://mono-project.com/MonoSandbox
- READ http://mono-project.com/MoonlightNotes
- CHECK out mono's source code
- TALK with Kumpera in #monodev channel - http://mono-project.com/IRC
If you are not familiar with CLI/MSIL then you here are some good sources to start with:
- Kenny Kerr: Introduction to MSIL (http://weblogs.asp.net/kennykerr/archive/2004/09/07/introduction-to-msil-part-1-hello-world.aspx)
- Standard ECMA-335 Common Language Infrastructure (CLI) (http://www.ecma-international.org/publications/standards/Ecma-335.htm)
- NET Common Language Runtime Unleashed (book preview) (http://books.google.fi/books?id=3059QRxPNQcC&printsec=frontcover&dq=.net+common+language+runtime&ei=vhxjSvbBKqK2yATsxIDaDw)
Thank you!