Mono Ships ASP.NET server
Miguel de Icaza writes "We have just released the new version of Mono the new version includes a working version of ASP.NET. The release includes a sample web server that "hosts" the ASP.NET runtime (it can be hosted anywhere, for instance in Apache, with mod_haydn). The web features of ASP.NET would not be very useful without the support of a backing database. The new version of Mono includes database providers for Oracle, MS SQL, Sybase, ODBC, OleDB, Gnome Data Access, SqLite, MySQL and of course, Postgres. The C# compiler is now 37% faster due to some nice optimizations on the JIT engine and in our class libraries. You can use it to develop GUI applications using Gtk#. Screenshots for mPhoto and the GUI debugger (which can debug both JITed apps and native applications). "
Mono is some great stuff, but it's going to take some time before .NET matches up with J2EE on Windows, let alone on the UNIX platforms.
Gtk# is more interesting, I think.
- jon
Ganymede, a GPL'ed metadirectory for UNIX
I don't see anything about a port for Darwin/MacOS X on the Mono web site. A full Aqua-# project would of course be a lot more work, but it would be fun to see it started in console mode or X-windows.
Has anyone tried building Mono on MacOS?
I'm going to enjoy watching the Mono developers catch up, then pull ahead of the Microsoft developers -- on Microsoft's own pet project.
.Net had to be written from scratch.
.Net developers. Well, that, and the fact that Microsoft's management, up to and including Bill Gates, are probably interfering in the project, especially rushing the early design phase. I think I'd hate working at Microsoft.
Bye bye lock-in fees for Microsoft. Bye bye forced sign-ups for Palladium.
All those years of putting features and lock-in ahead of quality and good design are coming back to haunt Microsoft. Mono is able to build on top of a modular platform, while most of Microsoft's C# and
That's how the handful of Mono developers are able to keep up to Microsoft's hundreds of
The volume of database providers in this release is the work of very few but very active hackers: Brian, Dan, Rodrigo, Tim and Ville. It is amazing the amount of code that these hackers pulled in the last two months.
It is easy to know when the System.Data hackers are working, your inbox gets hammered with patches from the mono-patches list.
You can help us support DB2, but you will have to get your hands dirty and start coding like the crazy hackers that brought all these providers (and Reggie has agreed to contribute his optimized provider as well).
Miguel,
Could you explain why, when I install Ximian Gnome, your software overwrites all the shortcuts in the "foot" menu and replaces them with your own offerings?
This, frankly, sucks. Folks trying Linux are just getting familiar with their systems and the programs that are typically installed. Then they get the bright idea to install Ximian because it looks "friendly", and you come along and take away all their programs.
Keep in mind that most folks won't know how to get those shortcuts back (if it is even possible). Your software is advertised as being ideal for newbies, yet in practice, it is actually hostile. This is typical of open source software, in that your own self-serving interests (promoting Ximian) are placed above that of the user.
In short your software is stupid.
Thank you.
Well, having ASP.NET is very convenient to move applications and components from Windows and deploy them on Linux or Unix systems. So I think that this is a plus on its own.
.NET offer a very interesting crossroads: the possibility of sharing components and existing classes independently of the language that was used to create it.
In terms of choices, I have to admit that I personally am more of an old school strongly-typed kind of person, and I like programming more with a language that I understand like C#. There is nothing wrong with PHP or Perl, but I feel a bit insecure with them. Like when you have to order water in a restaurant, and you do not want to look cheap, so you end up asking for `bottled water' even when you are trying to not spend a lot of money [1].
Mono and
I strongly believe that scripting languages are great for quickly building web solutions, and I would love to see more work between the PHP (and other scripting communities) and Mono. We are certainly interested in helping out.
For instance, the Mono runtime is easily embeddable, it could be used in existing systems with ease: for example, allow any language but use the PHP API to write web pages is one option (check the link for a few more samples and the tutorials), or hosting any programming language on Apache (as its done with the Apache/Mono module mod_haydn.
Miguel.
[1] Although as you grow older, you become more cynical, and you just tell the waiter `Get me a glass of the cheapest form of water you have'.
Good thing a:
If we can get a better "forms" implementation on 'nix (windows-like without windows bugs), that would be awesome
Secondly, but verrry important to those who do webhosting, clients requesting ASP pages would be able to run on 'nix servers, no longer requiring special windows dedicated hosts. For those who prefer 'nix servers, and many hosts do, running a windows server in the bunch is a pain in the butt!
If this actually pulls through, I will be amoung many who are very, very impressed.
What's the purpose of such a thing?
Are you also trying to peel off CORBA reliance?
Please explain your point of view, because I just can't understand why people are running away from COM as if it were the plague... and into this new swamp that is .NET.
The patent above does not describe any technology related to the .NET Framework, but instead it seems like it might *remotely* talk about Passport, which is something that Mono is not really involved with.
Interesting comment nonetheless, but the link to the patent might have been to `method to defibrilate cows' and might have been slightly more on-topic.
Unisys were well aware of the widespread use of LZW GIF image compression in many vendors software, so it's better to use PNG.
Um duh. Yes I've been programming with COM for 5 years.
.NET allows "xcopy" installs. No registry entries, just copy the entire directory and you're done.
How do you tihnk CoCreateInstance constructs an object from a classid?
How do you think COM knows which IID relates to which interface?
Yes. The registry.
You have to register all com interfaces and objects in the registry.
COM simply wouldn't work without some kind of registry or repository.
in comments or article, or at go-mono, why?
Is the performance still acceptable and can compatibility be guaranteed? Chillisoft ASP is great if you're a commercial ISP or otherwise make money from hosting ASP stuff, and therefore can afford the price. But for the little educational student webserver, it's out of the question.
Can this compete? Or do the users have to learn a whole new brand of ".NET ASP" to do anything useful with it? I never knew anyone who uses ASP, so I never looked -- are there other free ASP-on-Linux solutions out there?
I pay for Ximian Express as a way of supporting Evolution. When Ximian first arrived you had to download 100Mb to get it started.
/etc
:-)
I did file a bug report on the conversion of the menus and the fact that on Red Hat 7.X Ximian killed the KDE menus when using a Gnome desktop.
The feedback I got was to create a link to another directory in
This I do not think is suitable for a newbie. I think that it is also terrible to seriously damage the KDE menu structure in all versions of one of the biggest distributions.
I had seriously considered at the time to stop making payments and would have asked my girlfriend to stop too; however I saw the funding of Evolution as more important so we switched to Mozilla and left the payments running.
Still not happy
Slashdot Beta should die a painful death.
This may be a stupid question but does mono work on windows? Everything seems to imply it will but then the downloads section all seem to be for linux. I'd be interested in having a play with it on windows as it's the only environment available to me most of the time.
Sig is taking a break!
one useful feature mono will hopefully provide is the ability to run .net programs on older _windows_ systems.
:) - microsoft doesn't support .net on windows 95 (presumably as part of their overall strategy to force upgrades by making their old os versions obselete).
.net applications (ones that don't call the win32 api and are thus potentially more portable) - the inability to do any multimedia stuff (even a simple beep) without resorting to win32 calls, makes it pretty much impossible for any reasonably large application :).
thats right
having written a windows forms application (the decision to use windows forms based on the fact that it really is one thousand times nicer than win32/mfc to create gui applications with), i was a bit shocked to find out that my application won't run under windows 95 at all, and that for other old microsoft OSes a TWENTY megabyte download is required to support it! (a bit of a jump from the one or two megabytes for the visual basic dlls).
and one further note - about 'pure'
Hmmm. Considering the amount of effort that was required to make WineLib work correctly on Linux/PPC, are you seriously planning the totally enormous investment of resources it'd take to port Wine to MacOS as well? Considering the primary motivations seem to be to improve GNOME development tools and increase Windows compatability, is the MacOS port just a throwaway comment or are there serious plans?
Only porting the core windowing and widget library would probably cut down the amount of work involved, but for instance Wine is heavily dependanct upon X11 currently....
Basically, the
Technologies included in the
Basically, anyone who imlements a CRI will be able to run
Primers:
Caveat when buying books: see that they cover the latest release and not forex the beta release!
You allude to Java needing a standards process - have you read or looked at any of the Java Community Process stuff? What is your problem with a system that lets companies and individuals besides Sun propose and comment on enhancements and additions to Java?
"There is more worth loving than we have strength to love." - Brian Jay Stanley
For instance:
Again, I'm trying to look at reasons why I would prefer PHP to ASP.NET, and it seems like there are reasons that you are convinced are compelling, so I'd be interested in hearing them.
We're discussing ASP.NET, not ASP. Totally different, it would be like comparing Perl CGI scripts to JSP.
.NET SDK from Microsoft is free, that includes compilers and everything. Microsoft has an ASP.NET development environment called Web Matrix that's free. They have an Open source web server you can use that's free, and so on and so forth.
/. you probably aren't knowledgeable to call anything else crap.
As for most of your other complaints, they all involve cost. So here we have this Mono implementation. On top of that the
"Please someone tell me what's the big deal of all this crap?"
If all you know about is Linux news you saw on
It's an infrastructure, and a very closed one -- ideas of its creators are imposed on the design and can not be changed. If successful, it captures not just software, it takes the area in the noosphere and pollutes (or improves) the process of thinking of all developers that go into that area. This is a kind of work that absolutely can not be developed by anything with commercial interest in mind and end up useful -- examples for that are legion -- PL/1 vs. C, STREAMS vs. BSD Sockets, RPC vs. socket-based protocols with protocol-specific parsing, Motif vs. GTK, H.323 vs. SIP, MPEG audio vs. Vorbis, and I hope, SQL will be next to go. In all cases except PL/1 later there was an open or semi-open implementation of bad standard, and it ended up being absolutely useless for any purpose other than to drag bad code into good systems, thus delaying the development of better one.
Contrary to the popular belief, there indeed is no God.
Microsoft claims that the CLR bytecode is designd for JIT. Java bytecode was definately originally designed to maximize portability of interpreters (as in there are JVMs for 8-bit microprocessors and 64-bit "big iron") rather than for optimal recompilation to native code.
To what extent is this true? Please tell us about features in the bytecode or the class file format that are optimized for efficient recompilation on the fly. I've read Ken Thompson's paper at Bell labs about the design of the DIS virtual machine. It would seem that a stack-based virtual machine is much less suitable for JITs than a memory based virtual machine. Cam you refute this, particualrly on non-register-starved platforms (PPC, ARM, Itanium)? Granted, memory machines much more complicated in concept than stack machines. However,for optimum register allocation in the native code, you need to basiclly undo the stack machine's register allocation (to two GP registers, the top of the stack) before doing register allocation, while memory machine bytecode is basically ready for register allocation with little preprocessing.
You must have some gripes about MSs VM design. What are the main ones? What about the VM imposing C#s object model at the "hardware" level instead of using constructs written in bytecode and using privledged VM modes (analogous to privledged CPU instructions on a real machine, but perhaps much higher-level instructions) to enforce security restrictions? (This seems to be one of the main gripes of enthusiasts of non-ALGOL-descended languages on the .NET platform.)
While you're at it, can you point to features that indicate MS really wanted a VM that worked elegantly with languages very unlike C#? I've heard that a main deterant to Stackless patches being merged into the main Python distribution is the changes necessary are very ugly to do in the JVM and would probably cause a major split with the Jython people. Would it be easy to get efficient handling of tail-recursion and efficient implementations of Stackless Python? How badlymangled internally are Perl.NET and Python.NET?
Thanks for all of your hard work, and good luck in the future.
Copyright Violation:"theft, piracy"::Anti-Trust Violation:"thermonuclear price terrorism"<-Overly dramatic language.