depends rework thoughts. -- addendum

elaine elaine at fwsystems.com
Tue Dec 9 12:29:13 GMT 2003


Ok, why I prefer to drop as much bash from core as possible.

1. as delineated in my last email we're dealing with a lot of data
structures that are unwieldly in a posix-like shell.

2. Due to the use of bleeding-edge versions of many tools used in
lunar, our code is virutally not portable. We require late versions
of all of the following:

	bash
	sed
	mktemp
	dialog
	Possibly other things

3. Perl is capable of handling all of what we need and to my knowlege is
part of the base install of nearly every linux/Unix available. Lunar
in perl would not require the latest version of perl, hence a perl-based
system could be expected to run on all of the following:

BSD's
Vendor Unix
Windows 2k
Probably VMS (not that anyone cares :-))

4. We have documented bugs due to the leakage of our build-system
shell varibles into the build-environment (configure; make; make 
install).


Also I think it's important to note that when you get to the point of
*build* moonbase data is largely in bash anyway. Our current scriptbase
(moonbase) will not be trivial to translate, however I still prefer
putting effort into that task after re-factoring core than adding further
complexity to a core which is already difficult to maintain.

Basically I have a strong preference to work on code that's portable.
writing portable code isn't that much more difficult, and the discipline
of writing portable in the first place usually pays off in terms of 
better maintainability.


'nuff said, elaine


More information about the lunar-dev mailing list