nmh-workers
[Top] [All Lists]

Re: nmh and post/spost

1998-02-16 18:32:48
+----- On Wed, 11 Feb 1998 10:57:56 +0100, Casper Dik writes:
| 
| >+----- On Tue, 10 Feb 1998 15:04:50 +0100, Casper Dik writes:
| 
| >| hear, hear!
| >| 
| >| Compile time options are evil.  Apart from making configuring and testing
| >| hard (oops, want to change this option needs recompile) it makes binary
| >| distributions infeasible.
| >| 
| >| Keep in mind that many people now download binary distributions (very 
| >| popular for Linux and also for Solaris).  Do we need 2^n binary 
| >| distributions (where n is the number of binary options)?  I think not.
| >
| >I disagree, having non-compile time options leads to program bloat. Now 
| >we have 2 evils which can easily be resolved by making the compile 
| >time option yes/no/runtime. Look at Linux, should the kernel cater for 
| >every device imaginable, or should you get something that works 
| >reasonably well for most machines but which can be tuned to your system 
| >if you want.
| 
| 
| Your argument doesn't follow.
| 
| We're not talking substantial things such as adding device drivers
| or compiling kernels (of course, we all know that device drivers should
| be loaded dynamically, so that point is moot anyway).

I guess that I must be stupid then, I thought that there were 
advantages in loaded with the kernel, particularly now that Linux uses 
multiple psects (or whatever the ELF term is).

| And in binary device driver distributions, the kernel configuration is
| still easily adapted.

I work with Solaris 2 and if you know the parameter then it is easy, 
would anyone care to hazard a guess as to what dosynctodr does? I will 
admit though that SunOS wasn't easier to configure in this regard. One 
comparison that I can make between the two is that my SS10 died when I 
replaced SunOS 4.1.4 with Solaris 2.5.1 and it wasn't usable until 
nearly tripled the memory, the comparison isn't totally fair (may be 
not fair at all) as I also went from X11 and NIS to OpenWindows and 
NIS+.

| For programs compile time options are evil and should be exterminated;
| first of all, there's hardly any source code bloat.
| 
| #ifdef FOO vs if (foo)
| 
| 
| The code will be somewhat bigger, but I doubt it will be more than 1% or 2%
| for typical options.

It depends on the option, whether or not we statically link and 
whether we use RISC or CISC machines.

| Giving a choice between yes/no/runtime is more evil as it makes the source
| code potentially much more complex.

A lot depends on the compiler, some will remove code that can't be 
reached (all should but I don't think that they do). Then you just need 
code to set the option if it isn't defined.

/Michael




<Prev in Thread] Current Thread [Next in Thread>