1 <link rel="alternate" type="application/rss+xml" title="RSS" href="index.rss"/>
6 <a href="http://www.ximian.com">Ximian</a> announced the
7 launch of the Mono project, an effort to create an open source
8 implementation of the .NET Development Framework.
10 Mono includes: <a href="c-sharp.html">a compiler</a> for the
11 C# language, a <a href="runtime.html">runtime</a> for the
12 Common Language Infrastructure (the CLR) and a set of <a
13 href="class-library.html">class libraries</a>.
15 You can read our <a href="rationale.html">rationale</a> for
16 this project. If you have questions about the project, please
17 read our list of <a href="faq.html">Frequently Asked
18 Questions</a> or <a href="mailto:mono-list@ximian.com">contact us.</a>
20 You might also want to <a href="download.html">Download the
21 source</a> for our work so far. Grab a <a
22 href="snapshots">snapshot</a> of our current work, or <a
23 href="http://cvs.hispalinux.es/cgi-bin/cvsweb/?hidenonreadable=1&f=u&logsort=date&sortby=file&hideattic=1&cvsroot=Mono">browse
27 href="mailing-lists.html">subscribe</a> to our mono-list
28 and mono-announce-list
30 You can contact the team at: <a
31 href="mailto:mono-list@ximian.com">mono-list@ximian.com</a>
37 <b><a href="c-sharp.html">C# Compiler</a></b>
40 <b>Self hosting on Linux</b><br>
58 Linux/x86, Linux/PPC<br>
59 In progress: StrongARM, SPARC.
64 <b><a href="class-status.html">Classes</a></b>
67 Corlib is self hosting.
75 <a href="index.rss"><img src="images/xml.gif"></a>
85 <b>Hong Kong:</b> August 10th. If you live in Hong
86 Kong, come see Duncan Mak talk about the Mono project.
88 href="http://linux.org.hk/org/event/200208-talk/">here</a>
90 <b>San Francisco</b>: August 14th. Linux World Expo.
92 @item Aug 1st, 2002: Mono Hackers Hall of Fame
94 The <a href="hackers.html">Mono Hackers Hall Of Fame</a> has been started
95 to show our appreciation to the excellent contributors that made <b>mono::</b>
96 a successful free software project.
98 The first, deserved, entry goes to
99 Nick Drochak, who joined us in the first days of Mono and built the testing
100 infrastructure for the C# assemblies, fixed tons of bugs and even adventured
101 himself in the lands of the C runtime. His work is invaluable for keeping
102 Mono on the right track through the daily changes in the codebase.
104 @item July 31st, 2002: Flow Analysis
106 Martin has checked into CVS the data flow analysis patch for
107 MCS, this means that we now correctly implement definite
108 assignment in the C# language.
110 @item Jul 31st, 2002: Most ASP.NET controls render, Gtk# structs.
113 href="http://lists.ximian.com/archives/public/mono-list/2002-August/001234.html">posted
114 an update</a> on the ASP.NET widgets that are still pending. Patrik is back, and he is
115 working with Gonzalo to streamline the pipeline
117 Rachel quietly commited to Gtk-Sharp support for marshaling
118 structures (very important for Gtk#). This uses extensively
119 the new marshaling code that Dietmar added to the runtime.
121 Dietmar is also now sharing more code for P/Invoke using his
122 intermediate representation. Another step to share more code, and
123 simplify the porting and maintenance process.
125 @item Jul 27th, 2002: NGEN tool for Mono.
128 href="http://lists.ximian.com/archives/public/mono-list/2002-July/001117.html">announced</a>
129 the availability of his CIL to C compiler. This allows your Mono assemblies to be pre-compiled
130 and optimized by GCC in your platform, increasing the speed significantly of your code.
132 @item Jul 26th, 2002: Mono 0.13 has been released.
134 <b>Mono 0.13 has been released!</b> (details <a
135 href="archive/mono-0.13">here</a>). Get
136 your sources for the <a
137 href="archive/mono-0.13.tar.gz">runtime</a> and
138 <a href="archive/mcs-0.13.tar.gz">compiler and class libraries</a>.
140 Alp made Debian packages and they are <a
141 href="http://www.atoker.com/mono/">here</a>. Cristophe made
142 packages for Red Hat and they are <a
143 href="http://mono.baselabs.org/software">here</a>.
144 And Windows packages have been <a href="http://www.superin.formativ.net/mono/mono.htm">contributed</a>
146 @item Jul 23rd, 2002: Mono Verifier, System.Web.Services, ASP.NET samples.
148 Mono now has a verifier. It is used by the runtime, or you can invoke it manually to
149 verify an image by using the `pedump' tool.
151 Tim Coleman has started work on the System.Web.Services
152 assembly (you can also track the status here on the web page).
153 Contact him if you want to help in this assembly or with the
154 associated web service tools.
156 Various samples for ASP.NET have landed in CVS.
158 @item Jul 20th, 2002: Spanish Mono Tutorial.
160 A spanish tutorial on using Mono is <a
161 href="http://mono.es.gnome.org/tutoriales/mono-linux/">here</a>.
163 href="http://mono.es.gnome.org/tutoriales/mono-puf/">FAQ</a>
164 has been translated as well.
166 @item Jul 19th, 2002: File handle redirection, Embeddable Mono and Mono Linux compilation.
168 Dick's code for file handle redirection is complete and has
169 now landed on the CVS repository.
171 The Mono runtime can now be embedded into your application
172 (also known as "CLR hosting"). See the sample in
173 mono/samples/embed. This allows your application to link with
174 the Mono runtime, then your C code can call into the C#/CIL
177 Peter Williams and Martin contributed some Makefiles to
178 compile all of Mono on Linux. Details are <a
179 href="http://lists.ximian.com/archives/public/mono-list/2002-July/000916.html">here</a>.
183 The first documentary on Ximian's development team is now
184 available online, from young director <a
185 href="mailto:erik.pukinskis@uconn.edu">Erik Pukinskis</a>: <a
186 href="http://www.ximian.com/devzone/projects/codemonkey.html">"Code
189 A Tutorial on getting Mono installed from sources is now <a
190 href="http://www.go-mono.com/mono-beginning/x70.html">online</a>.
192 More progress on the ASP.NET front: user defined controls are
193 now being rendered, as well as many of the sample programs
194 from www.asp.net. Gonzalo's work can be found on module XSP
195 (this implements the .aspx compiler).
197 Sergey Chaban has got Gtk# working on Windows, you can see
198 some screenshots: <a href="sshots/Gtksharp-1.jpg">sample apps</a> and
199 <a href="sshots/Gtksharp-2.jpg">running with a russian charset</a>.
203 Paolo today got mono to complete host itself on Linux. This
204 means that we can now compile the `corlib' using the Mono C#
205 compiler and the Mono runtime.
207 Compiling the corlib was rather tricky, because the types that
208 the compiler uses during the compilation process will come
209 from the source code it is compiling.
211 After a few months of work, we have finally fleshed out all
212 the remaining bugs. Now the next step is to update the makefiles
213 to compile with the Mono tool-chain.
217 * The Mono C# compiler was able to compile itself on December 28th, 2001.
218 The resulting image contained errors though.
220 * The Mono C# compiler was able to self-compile in on
221 January 3rd, 2002. Becoming a self-hosting compiler on Windows.
223 * The Mono runtime matured enough by March 12, 2002 that it
224 was able to bootstrap the Mono C# compiler on Linux using our interpreter.
225 This means that our development tool was self sufficient.
227 * On March 26th, the JIT engine was fixed, so we could use this to
228 run the compiler on Linux.
230 * Martin fixed the remaining bugs in the compiler that stopped it from
231 compiling the `corlib'. The resuling image still contained errors though.
233 * On July 8th, Radek got the PowerPC port to bootstrap
234 the C# compiler. This is important, because it exposed
235 various tricky issues in a big-endian system.
237 * Today: we can bootstrap the compiler using libraries
238 and the compiler compiled with itself on Linux. The process is complete.
241 In the meantime, Dietmar has quietly implemented the remaining
242 pieces of Marshalling in the Mono runtime. This is very
243 important for the Gtk# guys to move on with their bindings.
245 To make things more interesting, he replaced most of the
246 architecture specific code generation for trampolines
247 (delegates, invocations, function and p/invoke trampolines) to
248 use CIL. This CIL is then compiled on the flight by the JIT
249 Compiler engine. By doing this, we have reduced the burden to
250 port the JITer to new architectures, and that our trampoline
251 code is cross platform.
253 @item Looking for volunteers
255 We are looking for volunteers to help complete various pieces
256 of Mono and help move the project forward, we need
260 * More tests to the existing class libraries.
262 * Finish existing class libraries, check our <a
263 href="class-status.html">class status</a> pages to see
264 all the missing things. There are open tasks all over
265 the place: XML, Database access, enterprise services,
266 configuration, ASP.NET, Drawing APIs, and more.
268 * Since we have now ASP.NET running, we would like to
269 create an ASP.NET application to maintain our class
270 library documentation.
272 We have some special needs (read them <a
273 href="classlib-doc.html">here</a>). There is a
274 prototype written using Windows.Forms, but we believe
275 it will be faster to have this done using ASP.NET (and
276 it is also a nice way of stress testing it).
278 * Support for the VB runtime: we need contributions
279 to make our VB runtime mature enough to host
280 applications compiled with the VB.NET to run with
283 * We need people to help write the documentation: you
284 can start editing our XML files by hand, and once we
285 have the ASP.NET tool, upgrade to that.
290 Ajay was the first to notice <a
291 href="http://lists.ximian.com/archives/public/mono-list/2002-July/000641.html">
292 Mono's first birthday</a>.
294 In a year, we have achieved plenty:
296 * 94 contributors with CVS access (84 non-Ximian developers).
297 * A complete CLI implementation:
299 <li> A fast and performing x86 JIT engine (inlining, constant propagation).
300 <li> An interpreter for other systems (PPC, Sparc, StrongArm).
302 * A self-hosting C# compiler, which can compile its class libraries.
303 * 37,140 file changes in CVS.
304 * 92,000 lines of C code.
305 * 437,000 lines of C# code (compiler, classes, tests)
306 * A working core for ASP.NET and ADO.NET.
307 * Major subsystems are functional: RegularExpressions,
308 System.XML, XML.Schema, System.Data, System.Web.
309 * The Gtk# project, which is maturing rapidly.
312 Thanks to everyone who has made Mono possible with their
313 feedback, regression tests, their comments, their help on the mailing
314 list, code contributions, complete classes, bug reporting, the
315 countless hours of bug hunting. This project would not have
316 been possible without every contribution.
318 It has been a great year for everyone involved in the
319 project. I think we have built a new and exciting community.
321 Now we have a solid foundation to build on, so this next year
322 looks even more exciting: not only because we will see more
323 Mono applications, but we will begin using Mono as an
324 `library' to be linked with applications that want to get
325 scripting-like features; Gtk# is our ticket to create nice
326 GNOME applications; And we will be developing CORBA bindings
327 to integrate with other object systems.
329 Also, for those interested in optimizations and tuning, this
330 year we will get to play with more advanced optimizations and
331 all kinds of interesting research ideas for improving Mono
334 A special thanks to the Mono developers at Ximian for managing
335 to survive their manager and a special thanks to our
336 regression test marshal Nick Drochak, who has been hunting
337 down, and fixing code in our class libraries and keeping us on
342 Radek today fixed the last bugs to get Mono to self host on
345 Alp Toker has released version 0.5 of <a
346 href="http://www.atoker.com/phonic/">Phonic</a>, a media
347 player for .NET. Phonic makes extensive use of Mono-developed
348 technologies such as Gtk# and csvorbis (Ogg player ported by
349 Mark). Hopefully we will be seeing many more exciting
350 applications like these in the near future.
352 Dietmar has been moving a lot of the architecture specific
353 code in the JIT engine to our internal representation. This
354 means that porting the JIT is simpler now, as there is less
355 architecture-specific code to maintain. The inliner, constant
356 folder and constant propagation are also done at the
357 architecture independent layer.
359 Gonzalo is now running the sample ASP.NET applications on
360 Linux with the Mono runtime. It still needs polishing though,
361 and help with the various ASP.NET controls would be
362 appreciated. The ASP.NET community seems more poor than the
363 PHP community, we need to have a few open source controls to
364 do things dynamic rendering (libart+gdk-pixbuf again can do
365 most of the work), charts and components like the kind of
366 thing you see in the PHP universe: to bring nice GPL code to
367 the masses of Windows developers, lure them into the world of
370 Dick has also got us the new Process implementation that
371 implements the Win32 semantics. Now only redirection is
376 Listen to Paolo Molaro do a talk on Mono at the WebIT
377 conference in Padova, Italy this coming friday. Details are
378 <a href="http://www.webbit2001.org/event/eventview/534/">here</a>
380 You can also see a trip report from the Gnome in the South trip:
381 <a href="http://primates.ximian.com/~miguel/sur.html">here</a>
383 Miguel will be doing a couple of talks at the O'Reilly
384 conference about Mono: status update, progress and developing
385 applications with it. Details are <a
386 href="http://conferences.oreillynet.com/cs/os2002/view/e_sess/2994">here</a>
388 href="http://conferences.oreillynet.com/cs/os2002/view/e_sess/2996">here</a>
392 Martin Baulig fixed the remaining bugs that prevented MCS to
393 compile our corlib. The compilation was tricky because of the way
394 MCS bootstraps the compile (internally mcs uses the types that are
395 being defined at that point to perform compares).
397 Martin and Paolo have been working hard on fixing the
398 remaining issues. Currently 102 test pass and 15 fail with
399 our resulting corlib.
401 Jesus' SoapFormatter classes are now in CVS.
403 I have been redoing the type lookup system for MCS. The
404 interesting bit is that I did most of this work on an airplane
405 using MCS itself. Which is a good test that the compiler is
406 now a good development tool.
408 Duncan, Mike and Rachel have been hard at work with Gtk#, now
409 there are bindings for the GtkHTML widget (the one used by
410 Evolution's composer). And Rachel also got the beginning of GNOME
411 bindings, that should simplify application development.
413 A big thanks goes to Dennis Hayes for getting the
414 Windows.Forms work together, and commiting so many stubs for Windows.Forms.
418 I am updating the Mono site from the Unesco offices in
419 Uruguay, the <a href="http://www.gnome.org/resources/calendar/roadshow/GNOMEenelSur.html">South-America trip</a>
420 to promote free software is going very well.
422 Many news in Mono-land this week so far:
424 Mike Kestner got bindings for GtkHTML last night for Gtk#,
425 this is using GtkHTML 2.0.
427 On Monday Piers Haken <a
428 href="http://lists.ximian.com/archives/public/mono-list/2002-June/000380.html">contributed</a>
429 the core to support XPath in Mono: most of the w3c spec is
430 implemented (modulo a few pending bits).
432 Dick checked in his implementation of the Process classes:
433 process forking and waiting support committed, with some functions to
434 query status. This was complex as we had to emulate the Win32
435 environment, but this is another step to be fully compatible.
436 This means for example that any process can check on the
437 status of any other process (without the parent/child relationship)
439 Of course, those interested
440 in only the Unix semantics can always P/Invoke the Unix calls.
445 Duncan has written a few sample <a
446 href="http://primates.ximian.com/~duncan/Mono">Gtk# demo
448 href="http://primates.ximian.com/~duncan/Mono/img/ImageViewer.png">screen
450 href="http://primates.ximian.com/~duncan/Mono/img/ImageBrowser.png">another</a>)
452 Rachel also got the beginning of Gnome bindings (<a
453 href="http://primates.ximian.com/~tvgm/gnome-hello.png">screenshot</a>).
455 href="http://primates.ximian.com/~tvgm/gtk-sharp-docs/">documentation</a>
460 Mono's ASP.NET has rendered its first page on Linxu for the
461 first time (Gonzalo and Paolo).
463 Also, we are getting close to
464 self hosting. Paolo posted a <a
465 href="http://lists.ximian.com/archives/public/mono-list/2002-June/000345.html">list
466 of pending issues</a> which are now very small.
468 Steam is picking up in <a
469 href="http://gtk-sharp.sf.net">Gtk#</a> as the bindings become more
470 complete and small applications are starting to emerge. Gtk#
471 now compiles completely on Linux. This uses a lot of the XML
472 libraries, which is nice to see.
476 Gonzalo has got the Mono ASP.NET implementation can now render all Html
477 Controls, and 21 out of the 26 Web Controls. Session tracking is
478 next. Look in xsp/test for a collection of tests that render with Mono.
480 Ajay has been very busy improving and extending the
481 XmlSerialization code. All fields had to be re-ordered to
482 match the Microsoft implementation.
486 You can now download a fresh tarball of the libraries and the MCS
487 compiler daily from <a href="http://www.atoker.com/mono/">Alp Toker's
490 New libgc RPMS for Redhat 7.3 are available on <a href="
491 http://java.thn.htu.se/~toor/">Richard Torkar's site</a>.
496 href="http://lists.ximian.com/archives/public/mono-list/2002-June/000128.html">announced</a>
497 today that the reading code for XmlSchemas is almost complete.
501 <b>Mono 0.12 is out!</b> More classes! More working code!
502 Better compiler! Faster runtime! Less bugs!
505 href="download.html#jun-7">Here</a> (quick links: <a
506 href="archive/mono-0.12.tar.gz">runtime</a> and <a
507 href="archive/mcs-0.12.tar.gz">compiler/classes</a>).
511 CodeDOM implementation from Daniel Stodden has got C# output support.
515 Gonzalo got the Mono XSP page parser to render its first ASP.NET
516 .aspx file today without using MS System.Web.Hosting classes.
517 It is currently on its infancy. But very good news, now we need to
518 upgrade our System.Web runtime to run natively on Linux.
520 Sergey's code for architecture and size-specific CPBLK has
521 been checked into CVS.
523 Paolo has checked the configuration code for Mono (to map
524 PInvoke dlls to other libraries).
526 <a href="ado-net.html">ADO support</a>: Daniel has checked in
527 a modified version of the MySQL data provider from Brad. And Rodrigo
528 started the OleDB using LibGDA.
532 An <a href="index.rss">RSS feed</a> is now available for the
533 Mono news. I find it surprising that there are so many tools
534 that process this data.
536 Binaries for <a href="http://www.superin.formativ.net/mono/mono.htm">Windows</a> are
537 now location independent, do not require Cygwin and come with a Wizard.
541 Daniel Morgan checked in his Sql# Cli tool into the
542 System.Data class library.
547 href="http://lists.ximian.com/archives/public/mono-patches/2002-May/003953.html">has
548 checked in</a> a major update to the System.Xml.Schema namespace.
550 Gonzalo moved XSP along this week: Added support for
551 templates, columns inside DataGrid, HTML comments, code render
552 and data binding tags, style properties in style tags,
553 ListItem inside list controls, float and double properties.
557 <a href="http://monologo.sourceforge.net/">MonoLogo</a> runs
558 on the Mono runtime. This <a
559 href="http://monologo.sourceforge.net/gtk.png">screenshot</a> shows
560 MonoLogo running Gtk#.
564 Martin has improved the debugging infrastructure in Mono, now
565 it is possible to get <a
566 href="http://lists.ximian.com/archives/public/mono-list/2002-May/005717.html">line
567 number</a> information on stack traces.
571 XSP <a href="asp-net">our ASP.NET</a> .aspx page parser is now
572 available on the AnonCVS servers. This is part of the ASP.NET
573 support in Mono. Gonzalo is the developer on charge of it.
575 Many updates to the <a href="ado-net.html">ADO.NET
576 implementation</a> from Dan, Tim and Rodrigo.
578 Radek got the Mono C# compiler running on Linux/PPC and
579 compiling most of our regression test suite.
581 Lawrence has been working really hard in fixing, improving and
582 polishing the underlying network infrastructure.
584 The Rafael and Chris have commited the beginning of the
585 VisualBasic.NET runtime support to CVS.
587 Jesus has contributed the beginning of the SoapFormatter
591 Linear register allocator has been deployed in the Mono JIT
593 href="http://lists.ximian.com/archives/public/mono-list/2002-May/005489.html">about
598 We are able to retrieve simple data from the database
599 using our ADO.NET like functionality. Only string and integer data
600 types are supported right now but more are in the works.
602 You can find more information
603 at <a href="http://www.go-mono.com/ado-net.html">The Mono ADO-NET Page</a>
605 Thanks goes to Chris, Daniel, Duncan, Gonzalo, Miguel, Rodrigo, Tim,
606 and others for these bits.
610 Rodrigo Moya announced <a
611 href="http://lists.ximian.com/archives/public/mono-list/2002-May/005366.html">new
612 LibGDA</a>: LibGDA is an ADO-like library for Unix systems.
613 This one removes all the CORBA and GConf dependencies, which
614 should make it easier to use and compile.
616 This is another milestone for our <a
617 href="ado-net.html">ADO.NET implementation plans</a>
619 We have a little surprise for everyone tracking the news on tuesday ;-)
623 Mark Crichton csvorbis port (C# port of Vorbis player) and
624 Richard Hestilow's <a href="http://monologo.sf.net">MonoLogo compiler</a> are now
625 on the CVS, and you can get them from AnonCVS.
627 Dick implemented inter-process sharing of handles as well as
628 simplifying the implementation of WaitForMultipleObjects, now
629 we have a `handles' subsystem in Mono. This is needed to fully
630 emulate the handle behavior that Win32 exposes, and that the .NET API
631 expose to applications.
634 href="http://gtk-sharp.sourceforge.net">Gtk#</a> front: <a
635 href="http://gtk-sharp.sourceforge.net/menu.png">Menu
637 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-May/000064.html">tells
642 Daily packages for <a href="http://www.debian.org">Debian</a> are available
643 <a href="http://www.atoker.com/mono/">here</a>
647 Binary packages of Mono 0.11 are available for <a
648 href="http://www.superin.formativ.net/mono/mono.htm">Windows</a>
649 (Thanks to Johannes Roith) and for
651 href="http://mono.baselabs.org/index.php/software/">Linux</a> (thanks
656 <b>Mono 0.11 is out!</b> Mostly performance improvements, bug
657 fixes and more classes are included.
659 A new version of the runtime, compiler and class libraries has
660 been packaged for your download pleasure. Binaries are
661 included. The <a href="archive/mono-0.11">Release Notes</a>
665 href="download.html#apr-24">Here</a> (quick links: <a
666 href="archive/mono-0.11.tar.gz">runtime</a> and <a
667 href="archive/mcs-0.11.tar.gz">compiler/classes</a>).
671 SharpDevelop 0.88a <a href="http://www.icsharpcode.net/OpenSource/SD">is out!</a>
673 Congratulations to the developers behind SharpDevelop for
678 Some updates from the hacking lines:
680 <b>The web:</b> Patrik Torstensson last week contributed the
681 http runtime support and started work on thread pools. This
682 is part of the ASP.NET support.
684 <b>Docs:</b> John Barnette, John Sohn and Adam Treat have been
687 <b>ADO.NET:</b> Daniel Morgan and Rodrigo Moya have been
688 working on the <a href="ado-net">ADO.NET</a> support, and got
689 the first signs of life this week (we can connect, insert
690 rows; do transactions: commit/rollback; SQL errors and
691 exceptions work). Check <a
692 href="mailing-lists.html">mono-patches</a> for all the
695 <b>Optimizations:</b> A number of optimizations in the runtime
696 made the compiler twice as fast this week:
698 Early this week Patrik started the string
699 rewrite in the runtime. Today Dietmar finished the
700 constructors and deployed the new layout.
702 Paolo got the JIT engine to generate profiles, which were in
703 turn used to find hot spots in Reflection, which he improved.
705 Daniel Lewis (of Regex fame) noticed the performance issues
706 with our current array layout, and contributed a new array
709 At the same time Dietmar started the the JIT inline code and
710 implemented constant propagation. These two optimizations
711 together are very powerful.
713 <b>Bug fixing:</b> And of course everyone has been helping out
714 with the bug fixing (Duncan, Gonzalo, Jonathan, Miguel, Nick,
720 Dietmar's inlining for the JIT engine just landed into
721 CVS. This is only a first cut and more improvements will come later.
723 Patrik, Paolo, Dietmar and Gonzalo have been busy optimizing
724 our class libraries and runtime engine to become faster. Many changes
729 Gtk# 0.1 "ButtonHook" has been <a
730 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-April/000048.html">released</a>
732 Binaries for the Mono Regression Test Suite are <a
733 href="archive/mono-tests.tar.gz">available</a> for
734 people porting the Mono Runtime to new platforms.
738 <a href="http://www.dotnetremoting.cc/book/AdvancedDotNetRemoting.asp">
739 Advanced .NET Remoting</a> from Ingo Rammer is now available. Ingo
740 helped us to implement the proxy support and the book is a valuable
741 resource for anyone interested in remoting.
745 Transparent proxy support has been finished, congrats to
746 Dietmar. Our JIT engine on CVS contains the implementation.
747 This should enable people to test the remoting framework on
752 Debugging information is now generated by the compiler thanks
753 to Martin's work. The resulting dwarf file can be used to
754 single step C# code in GDB. A document will be shortly published with
759 <b>Mono 0.10 is out!</b> The self hosting release of Mono has
762 A new version of the runtime, compiler and class libraries has
763 been packaged for your download pleasure. Binaries are
764 included. The <a href="archive/mono-0.10">Release Notes</a>
768 href="download.html#mar-27">Here</a> (quick links: <a
769 href="archive/mono-0.10.tar.gz">runtime</a> and <a
770 href="archive/mcs-0.10.tar.gz">compiler/classes</a>).
774 Paolo finally fixed the last bug in the JITer that stopped
775 us from using it to run the Mono C# compiler. Goodies are on
778 <a href="http://gtk-sharp.sourceforge.net">Gtk#</a> runs <a
779 href="http://gtk-sharp.sourceforge.net/gtk-hello-world.png">Hello
780 World</a>. Mike posted some <a
781 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-March/000034.html">details.</a>
786 Martin has been working on our debugging infrastructure, both
787 on the JIT side of things (adding dward support) as well as on
788 the class libraries (so that MCS can start generating
789 debugging information).
791 Jason and Kral keep working on the System.Xml namespace,
792 allowing Mike to move more to self-hosting his Gtk# code.
794 The System.Web classes are now part of the build (and they are
795 also part of the class status now). Ajay contributed a large
796 chunk of code to the System.Xml.Schema namespace
798 Dan (of regex fame) has been working on internal calls
799 support: moving more code from the old monowrapper to become
802 Paolo and Dietmar are working steadily on our runtime
803 environment, fixing bugs, adding missing features and allowing
804 us to run the compiler on Linux.
806 Remember to post your bug reports.
808 The nice class status on the right is brought to you by
809 endless hacking hours from Piers and Nick. These status
810 report pages have been helping us track down various mistakes
811 in our classes (very useful, check it out for yourself)
815 At midnight, in Italy, Paolo got the Mono C# compiler to self
816 host on Linux, the last bug has been squashed to self
817 hostingness. We have now a fully self hosting compiler in Linux.
819 A release will follow up shortly.
823 Updated the <a href="class-status.html">class status</a>, now
824 it is possible to use the right-side menu to browse a specific
829 MCS compiles on Linux!
831 Today Paolo got the <a
832 href="http://lists.ximian.com/archives/public/mono-list/2002-March/003726.html">MCS
833 compiler compiling itself on Linux</a>
834 completely for the first time! The resulting image still contains
835 some errors, but the whole compiler process goes now. Later in the day
836 and a couple of small optimizations and bug fixes, the compile
837 speed was improved in 400%
839 We are very close to have a complete self hosting environment now.
841 Mono is temporarly using the Bohem GC garbage collector while
842 we deploy the more advanced ORP one.
846 The CVS repository <a href="http://cvs.hispalinux.es/cgi-bin/cvsweb/?hidenonreadable=1&f=u&logsort=date&sortby=file&hideattic=1&cvsroot=Mono">can be browsed</a>
848 Jason has got an incredible amount of work on the Xml
849 classes during the weekend, and Gaurav is very close to have
850 the complete System.Web.UI.WebControls namespace implemented.
852 Martin and Duco have been killing bugs by using the recently
853 revamped regression test suite.
855 Piers has updated our <a href="class-status.html">class
856 status</a> page again, with even more information available.
858 The C# compiler has full constant folding implemented now and Ravi
859 killed bugs of bugs in the <a href="http://bugzilla.ximian.com/buglist.cgi?product=Mono%2FClass+Libraries&product=Mono%2FMCS&product=Mono%2FRuntime&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&cmdtype=doit&order=%27Importance%27&form_name=query">Mono Bug List</a>
863 RPMs of Mono 0.9 are available at <a href="http://mono.baselabs.org/#download">mono.baselabs.com</a>
868 href="http://lists.ximian.com/archives/public/mono-list/2002-February/003464.html">Christophe</a>
869 has setup his <a href="http://mono.baselabs.org">First Steps in Mono</a> web site, which
870 shows you a step-by-step process on getting Mono running on your system.
872 RPMs of Mono 0.9 are available at <a href="http://mono.baselabs.org/index.php/software/">mono.baselabs.org</a>
876 New <a href="class-status.html">class status</a> engine that
877 provides detailed information about missing functionality in
878 our class libraries. Nick built the cormissing tool and Piers
879 did the XSLT and DHTML magic.
881 More compiler progress on Linux: our support runtime now
882 enables the compiler to compile `MIS' on Linux (MIS being
883 Dick's Mono sample HTTP server ;-)
887 Paolo posted a list of <a
888 href="http://lists.ximian.com/archives/public/mono-list/2002-February/003266.html">ways
889 you can help</a> if you do not have Windows right now. Sergey followed up with
890 <a href="http://lists.ximian.com/archives/public/mono-list/2002-February/003268.html">his</a>
895 StrongARM port from Sergey Chaban has been checked into CVS.
899 SPARC: 44 out of 74 tests pass now (Jeff)
901 Power PC: delegates are working now (Radek)
905 <b>Mono 0.9 has been released!</b>
907 A new version of the runtime, compiler and class libraries has
908 been packaged for your download pleasure. The <a
909 href="archive/mono-0.9">Release Notes</a>
912 href="download.html#feb-22">Here</a> (quick links: <a
913 href="archive/mono-0.9.tar.gz">runtime</a> and <a
914 href="archive/mcs-0.9.tar.gz">compiler/classes</a>).
918 Paolo got our compiler natively to compile 117 of our tests.
919 Self hosting is closer every day.
921 Unsafe support is finished in the C# compiler.
925 Gaurav got DataGrid and DataGridItemCollection done.
927 C# compiler: Unsafe support is mostly complete (only stackalloc is missing).
929 New easy to run scripts for compiling Mono on Unix and Windows
930 is <a href="download.html">available</a>. We can now easily compile
931 Mono on Windows and Linux. If you had trouble before, use the
932 above scripts which will get the setup right for you.
934 There are now three machines that can provide AnonCVS, just
935 use anoncvs.go-mono.com as the hostname for your CVSROOT and
936 you will get one of the machines.
940 Do you want to see what <a href="http://people.debian.org/~lupus/mono/">Mono Looks Like?</a>
944 Application Domains now support the two LoaderOptimization
945 modes: share code or do not share code, and you can control
946 this with the --share-code command line option.
948 Paolo has now 100+ test cases run on Linux now with our class
951 PowerPC and SPARC ports are moving along (Radek and Jeff)
955 Excellent news since the 11th, here is a quick rundown:
957 AppDomains have been deployed (Dietmar). Socket work is done
958 (Dick). Corlib compiled with no refs to mscorlib (Dan). New
959 comprehensive tests for colib bits (David). Nick is driving the
960 regression test suite efforts and class library completeness.
961 New System.Data work (Chris). Bug fixes (Paolo, Duncan, Ravi, Miguel)
963 Miguel is off to the <a
964 href="http://www.fosdem.org">FOSDEM</a> conference in Brussels.
968 <b>Mono 0.8 has been released!</b>
970 A new version of the runtime, compiler and class libraries has
971 been packaged for your download pleasure.
974 href="download.html#feb-11">Here</a> (quick links: <a
975 href="archive/mono-0.8.tar.gz">runtime</a> and <a
976 href="archive/mcs-0.8.tar.gz">compiler/classes</a>)
980 We would like to welcome all the new developers that have
981 joined the project in the last couple of days. The classes
984 An explanation of the relationship between <a
985 href="http://mail.gnome.org/archives/gnome-hackers/2002-February/msg00031.html">GNOME
988 Nick is still leading our test suite platform. I can not
989 stress how important it is to have a good regression test suite
990 for our platform, as buggy class libraries are what are
991 stopping the compiler from running completely on Linux.
993 We are of course psyched to see Mono run on
994 non-Linux systems. Work is moving on native code generation
995 for StrongARM, PowerPC, and SPARC as well as porting Mono to
998 There are a couple of debates on the Mono list on implementing
999 a set of web server classes for <a
1000 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002911.html">enabling
1001 ASP.NET</a> on Mono.
1004 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002944.html">
1005 posted a list of pending tasks</a> to enable the compiler to run on Linux
1009 Mike Kestner has posted an <a
1010 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-February/000024.html">Update
1011 on his Gtk#</a> activities.
1016 href="http://lists.ximian.com/archives/public/mono-list/2002-February/002808.html">Qt
1017 bindings</a> for .NET. Adam is cool.
1021 Dan Lewis has contributed a major missing set of classes to
1023 href="http://lists.ximian.com/archives/public/mono-list/2002-January/002745.html">
1024 System.Text.RegularExpressions</a>.
1026 This is a fully .NET compatible implementation of the .NET regular expressions,
1027 fully Unicode aware. This contribution is very appreciated, as implementing this
1028 was not entirely trivial (supporting Unicode, plus a regex engine which is a super
1029 set of the Perl regex engine).
1033 The Mono contributors have relicensed the Class Libraries under
1035 <a href="http://www.opensource.org/licenses/mit-license.html">MIT X11</a> license.
1037 This license is an Open Source license, and is used by other projects
1038 (most notably, the XFree86 project).
1040 The runtime (JIT, metadata library, interpreter) remains under
1041 the LGPL and the C# compiler remains under the GPL.
1044 href="http://www.ximian.com/about_us/press_center/press_releases/mono_partners.html">Press
1048 href="http://news.com.com/2100-1001-823734.html">CNet</a>, <a
1049 href="http://www.wired.com/news/technology/0,1282,50037-2,00.html">Wired</a>,
1050 <a href="http://www.infoworld.com/articles/hn/xml/02/01/28/020128hnopennet.xml">InfoWorld</a>,
1051 <a href="http://www.newsforge.com/article.pl?sid=02/01/27/2232231">NewsForge</a>.
1055 New mailing list: <a href="mailto:mono-patches-request@ximian.com">mono-patches@ximian.com</a>.
1056 This mailing list will receive automatically the patches that are submitted
1057 to the Mono CVS to any of its modules.
1059 This allows anyone who wants to participate in the peer-review of the
1060 code submitted to CVS to receive patches on e-mail. It should also
1061 expose to everyone the changes that are being done by the team every day.
1065 Dick has got a simple web server running with Mono (`MIS: Mono
1066 Internet Server') that is mostly used to test our IO layer, a
1067 <a href="http://primates.ximian.com/~miguel/dick-mis-server.png">screenshot</a>
1069 Paolo and Dietmar are busy making our runtime self sufficient on
1070 non-Windows platforms.
1072 C# compiler front: A lot of focus in the past weeks after
1073 the C# became self hosting has been in making the compiler a useful
1074 tool for development: improve error handling, provide better error
1075 reports, fixing all known bugs, and finally profiling of the compiler
1080 Our compiler has been self-supporting since January 3rd. In
1081 the meantime, we have been busy working on making it run on
1082 Linux. Today Paolo got more work done on Reflection.Emit and
1083 the compiler compiled `console.cs' (a sample Mono program) on
1088 Dietmar landed the Unicode support patch. Class libraries and
1089 runtimes are now fully Unicode aware. The details are <a href=
1090 "http://lists.ximian.com/archives/public/mono-list/2002-January/002409.html">
1093 Last minute breaking news: Paolo got our compiler in Linux to
1094 compile fib.cs, patches are comming tomorrow once we have
1099 Mike Kestner posted an update on Gtk# <a
1100 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2002-January/000021.html"><i>New
1101 year, new direction</i></a>.
1103 Gtk# will be our foundation on which we will be implementing
1104 System.Windows.Forms.
1108 Mono C# compiler becomes self-sufficient. We can now continue
1109 development of the compiler with itself.
1111 Work on the class libraries is still underway for having a full
1112 self hosting system. We hope to achieve our goal of self-hosting
1113 on Linux before the end of the month.
1115 Join the fun by downloading either tonight's <a
1116 href="snapshots">snapshot</a> or getting your sources from our
1117 <a href="anoncvs.html">Anonymous CVS server</a>.
1121 After a lot of work, the C# compiler can compile itself.
1122 There are still errors in the generated image, but they are
1123 being fixed quickly.
1125 We will soon have the first non-Microsoft C# implementation!
1129 JIT: More work on our IO abstraction layer (Dick).
1131 JIT: exception handling for unmanaged code (Dietmar)
1133 System.Reflection: Support for PropertyInfo and
1134 PropertyBuilder as well as the various queries for MethodBase.
1136 C#: Pre-processor; Rewrite of MemberLookup which fixed many of
1137 the outstanding issues. More bug fixing allows it to compile
1142 Dietmar has improved the register allocation and now Mono performs
1143 two to three times as fast as it did yesterday. Amazing.
1145 The compiler keeps moving along, explicit interface
1146 implementation is there.
1150 The JIT engine can now run all the compiler regression tests as
1151 well as assorted other programs, many more opcodes added
1152 recently. Currently the JIT engine uses a very simplistic register
1153 allocator (just enough to allow us to focus on feature completeness)
1154 and that will be the next major task to improve performance and
1155 reduce spills and reloads.
1157 On the C# compiler front: language features are now pretty
1158 much complete. The big missing tasks are unsafe code support,
1159 visibility, explicit interface implementation plus static flow
1160 analysis. There are many small bugs that need to be addressed.
1162 You can get your copy of the <a href="snapshots">latest Mono</a>
1164 More work is also required on fixing the foundation class
1165 libraries, it is easy to find spots now since Nick got the
1170 AnonCVS access to Mono is here (updated every hour). Thanks
1171 to <a href="http://www.hispalinux.es">HispaLinux</a> and Jesus
1172 Climent for helping to set this up.
1176 All tests from the mono runtime work with the JIT engine now
1179 Recursive enumeration definition in the C# compiler are
1182 More work on the Web classes (Gaurav).
1186 JIT land: Paolo got GDB support into the JIT engine while
1187 Dietmar added exceptions support to it.
1189 The C# compiler supports all array initializations now, and the
1190 switch statement as well as fixing many existing bugs. Many
1193 Nick keeps working on improving our class library test suite.
1195 Dick has almost completed the Mono IO layer.
1200 Mike Kestner has posted an <a
1201 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2001-November/000015.html">update</a>
1202 on Gtk# development.
1208 Paolo today got the Mono C# compiler running <a
1209 href="http://lists.ximian.com/archives/public/mono-list/2001-November/001941.html">on
1210 Linux</a>. It compiles a sample program and then the sample
1211 program is executed.
1213 Mutator unary operators (++ and --) in the compiler are fully
1214 functional, they used to only work on variables, and now they
1217 To sum things up: The Mono C# compiler is written in C# and
1218 uses the .NET classes to get its work done. To make this work
1219 on Linux work has to happen in various fronts:
1221 * The C# compiler is being worked on and can compile
1222 many programs now (our test suite at this point is
1223 made up of 40 tests).
1225 * The class libraries need to be mature enough to support
1226 the compiler, particularly System.Reflection.Emit (which is
1227 what Paolo has been working on lately).
1229 The compiler currently requires 103 classes from the
1230 .NET runtime (you can get the list by running: <b>monodis --typeref mcs.exe</b>
1232 * The interpreter should be mature enough to run the actual
1233 compiler byte codes and the corlib bytecodes.
1236 At the same time, Dietmar is working on the JIT engine which will
1237 replace our interpreter in production.
1243 Dietmar got value types working on the JIT engine. Sean has
1244 got assembly loading in the runtime (required for NUnit).
1246 More progress on enumerations and attributes from Ravi.
1248 Nick keeps working on improving our class libraries.
1254 Enumerations, array access and attributes for the C# compiler are into the CVS now.
1256 Full array support is not complete, but moving along.
1262 Dietmar's new set of patches to the JIT have 20 out of 33
1269 Mike Kestner, main Gtk# contributor has posted a very interesting <a
1270 href="http://lists.ximian.com/archives/public/gtk-sharp-list/2001-November/000013.html">
1271 update</a> on his work on Gtk#.
1273 Ravi commited the initial support for Attributes in the
1276 Many HTML Controls from Leen checked into CVS.
1278 Paolo checked in his new System.Reflection and
1279 System.Reflection.Emit implementations. He has been working
1280 steadily on this huge task for a few weeks now. This is the
1281 foundation for the Mono C# compiler, and hence a very
1282 important piece of the puzzle.
1288 Many clean ups have been going into the class library by Nick Drochak.
1290 Mega patch from Dietmar: he commited the flow analysis code
1293 A lot of work has been going into the WebControls by Gaurav (4
1294 new controls plus improved and bug fixed base classes).
1300 Ravi commited the caller-side method selection of methods with
1301 variable length arguments. Now he depends on Miguel finishing
1302 the array handling support.
1308 Lots of classes for System.Web from Gaurav were commited this
1311 Some large recent developments:
1313 The Decimal implementation from Martin Weindel has been
1314 partially integrated (we need to put the internalcalls in
1315 place now and compile and link the decimal code).
1317 Derek Holden commited recently the IntegerFormatter code into
1318 the CVS, so we got a pretty comprehensive integer formatting
1319 engine that we can finally use all over the place.
1321 Compiler got support for lock as well as assorted bug fixes.
1322 Ravi is still working on array support (and then we can
1323 optimize foreach for the array case).
1325 Dietmar is busy working on flow analysis on the JITer, the
1326 previous mechanism of generating the forest was wrong. Paolo
1327 has been a busy bee reworking the System.Reflection.Emit
1328 support code, and we should have some pretty nice stuff next
1329 week. Dick on the other hand is still working on the
1330 WaitOne/WaitAll emulation code. WaitAll is like select on
1331 steroids: it can wait for different kinds of objects: files,
1332 mutexes, events and a couple of others.
1334 Mike Kestner is busy working on Gtk# which is now using the
1335 .defs files to quickly wrap the API.
1341 Reworking expressions to support cleanly indexers and
1342 properties. <a href="http://www.nat.org/evolution.php3">11
1343 days</a> until Evolution 1.0 ships.
1345 Ximian users around the world <!--a
1346 href="http://www.bez.it/IMAGES/nora.jpg"-->rejoice<!--/a--> with
1347 recent C# compiler progress.
1353 Delegate support has been checked into the compiler
1354 (definition and invocation); break/continue implemented.
1360 JIT engine supports many of the object constructs now (object
1361 creation, vtable setup, interface table setup).
1363 The C# compiler now has almost full property support (only
1364 missing bit are pre-post increment/decrement operations),
1365 delegates are now created (still missing delegate invocation).
1366 try/catch/finally is also supported in the compiler now.
1368 System.Decimal implementation is in, as well as many crypto
1375 Sergey has released his first version of the <b>ilasm</b>
1376 assembler written in C#. You can get it from his web page:
1378 href="http://mono.eurosoft.od.ua">http://mono.eurosoft.od.ua</a>.
1380 The plan is to integrate ildasm into the Mono CVS soon. This
1381 component should in theory also be reusable for SharpDevelop
1388 Our System.Reflection.Emit implementation created its first
1389 executable today. This means that a very simple .NET program
1390 that was compiled on Windows was able to generate a .NET program
1391 while running on Linux using the Mono runtime.
1393 The various piece of the puzzle are starting to get together:
1394 the compiler can compile simple programs now and we are
1395 basically focusing on completeness now.
1402 href="http://www.icsharpcode.net/OpenSource/SD/default.asp">Sharp
1403 Develop 0.80</a> was released today.
1409 More progress: more opcodes are working (Paolo); The compiler
1410 runs up to a point in Mint (Paolo); operator overloading works
1411 (both unary and binary) all over the place (Miguel); Completed decimal
1412 type conversions (Miguel); New build system in place based on
1413 Ant (Sean and Sergey); Refactored and documented the
1414 internals of the JIT engine (Dietmar); StatementExpressions
1415 handled correctly (Miguel).
1421 A couple of news-worthy items: Dick got the initial thread
1422 support into mint; Paolo implemented many new opcodes; Dietmar
1423 got long operations and mul/div working on the JITer; Ravi rewrote
1424 the Method selector for expressions to be conformant; Miguel
1425 got i++ working. All in tonight's snapshot
1431 Paolo has written a section on <a href="porting.html">Porting
1432 Mono</a> to othre architectures.
1438 <A a href="download.html#sep-18">Mono 0.7</a> has been
1439 released (runtime engine, class libraries
1440 and C# compiler). Check the <a href="archive/mono-0.7">Mono
1441 0.7 announcement</a> for details
1447 Mike Kestner's Gtk# (Gtk-sharp) was checked into the CVS
1448 repository. Gtk# can run a simple hello world application.
1449 The binding is nice, as it maps Gtk+ signals to delegates in
1450 C#. You can see the Gtk# Hello World program <a href="src/HelloWorld.cs">here</a>
1452 Gtk-sharp should be available on the next snapshot set.
1458 Dietmar checked in his CIL tree/forest regeneration and most
1459 importantly, the x86 instruction selector burg grammar.
1466 The MCS compiler <b>can compile the sample Hello World</b>
1467 application and generate a Windows/CIL executable that runs!
1469 This executable runs with the Mono Interpreter of course (see
1476 Dietmar checked into CVS the `monoburg' architecture
1477 independent instruction selector for the JIT engine.
1483 <b>.NET Hello World is working under Mono!</b> The latest snapshots
1484 will let you run it.
1486 Hello World consits of 1821 CIL instructions,
1487 performs 66 subroutine calls and loads 12 classes from the corlib.dll
1489 Good work Mono team!
1495 Lloyd Dupont has announced his OpenGL bindings for C#, they
1496 are available here: <a
1497 href="http://csgl.sourceforge.net">http://csgl.sourceforge.net</a>
1503 New version of the Mono Runtime, Compiler and Classes has been
1505 href="download.html#august-22">released.</a> Check the <a
1506 href="archive/mono-0.6">0.6 announcement</a>.
1512 A new <a href="contributing.html#compile-service">Compilation
1513 service</a> has been made available by Derek to allow people
1514 without access to the <a
1515 href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true">.NET SDK</a>
1521 Daily snapshots of mcs and mono are now available, they will
1522 run every night at 10pm Boston time.
1528 Mono Runtime 0.5 has been <a
1529 href="download.html#july-29">released.</a> Check the <a
1530 href="archive/mono-0.5">release notes</a>
1536 The slides for <A href="Presentations/O-Reilly">my
1537 presentation</a> at <a href="http://www.oreilly.com">O'Reilly
1538 Open Source Software Convention</a>
1544 Another release of the class libraries is out, check the <a
1545 href="archive/mcs-22">MCS 22-July Release Notes</a>. You can
1546 get the new class libraries from <a
1547 href="download.html#july-22">here</a>
1553 Another release of the class libraries is out, check the <a
1554 href="archive/mcs-19">MCS 19-July Release Notes</a>. You can
1555 get the new class libraries from <a
1556 href="download.html#july-19">here</a>
1562 Another release of the class libraries is out, check the <a
1563 href="archive/mcs-17">MCS 17-July Release Notes</a>. You can
1564 get the new class libraries from <a
1565 href="download.html#july-17">here</a>
1567 Do not forget to check out the updated <a href="faq.html">FAQ</a>.
1569 Got Sean's new Class
1570 Status web pages up. These are a lot better than mine, and
1571 we are now keeping better track of contributors.
1577 Another release of Mono is out, check the <a
1578 href="archive/mono-0.4">Mono 0.4 Release Notes</a>. Get it <a
1579 href="download.html#july-15">here</a>.
1586 href="http://lists.ximian.com/archives/public/mono-list/2001-July/000399.html">new
1588 runtime, compiler and classes has been made. Get it <a href="download.html#july-14">here</a>
1594 I keep getting questions about my opinion on Passport, even when
1595 Mono has <b>nothing</b> to do with it. I finally <a
1596 href="passport.html">wrote something.</a>
1608 Brian posted a story on <a
1609 href="http://www.oreillynet.com/dotnet">O'Reilly Network .NET</a>