Re: C#, .Net, and Mono

[prev] [thread] [next] [lurker] [Date index for 2006/12/27]

From: peter (Peter da Silva)
Subject: Re: C#, .Net, and Mono
Date: 16:50 on 27 Dec 2006
> > > Because Mono has to implement all these "system level" semantics that
> > > don't exist on unix, it has to create a sort of pseudo-system-wide layer
> > > itself.  This means that all your Mono processes have to be able to talk
> > > to each other.

> > UNIX of course has no mechanism to allow programs to talk to each other. :(

> I of course meant they need to talk to each other surreptitiously,
> whether you want them to or not.  Whether this is useful to your program
> or not.

I was being sarcastic.

> > > The way it does this is the first Mono prcess you launch is not really
> Sure, it's an okay design when done intentionally.  But in this case,
> the spawned program that is your processes's direct child might be the
> program you wanted, or might be a handler daemon, depending upon whether
> there was one already running.  It's a minor irritant having this be
> inconsistent like this.

That's just stupid.

It's no harder to write:

	if((pid=fork()) != -1 && pid == 0) { spawn_handler_daemon(); }

Than to write:

	if((pid=fork()) != -1 && pid != 0) { spawn_handler_daemon(); }

At this point I generally go charging in and start sending in code patches
but frankly Mono sounds like something that needs all the hindrance it
can get.

> > I am driven to ask, though, is this actually using $HOME or is it
> > calling getpwuid(getuid()) to find your home directory?

> I did not mean the env variable.  I assume it uses the normal calls.

The env variable *is* the normal call. Only programs sitting at a trust
boundary and replicating the environment from scratch to prevent security
vulnerabilities should be using getpwuid(getuid()).

This would incidentally give you a back door solution to some of the
problems.

> Mono is somewhat sound in terms of technology, it just has completely
> stupid design.

I can't parse that sentence. Each part of it makes sense individually, but
put together the result is noise. What do you mean by a completely stupid
design being sound?

There's stuff above here

Generated at 03:02 on 01 Jan 2007 by mariachi 0.52