From: David Vallner Date: 2006-10-30T10:27:14+09:00 Subject: Re: ruby's build system --------------enigAA0CF57FBC687298060A471F Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable M. Edward (Ed) Borasky wrote: > David Vallner wrote: >> Selfhosting is a nice exercise in brain self-surgery, but I think it's= >> more practical to bootstrap using an external environment that's most >> likely to be present. I'm not sure I'd like the ruby build process to >> take too much time building a bloated miniruby just to build itself >> again for no practical benefit whatsoever. >> >> David Vallner >=20 > Yeah, but ... "an external environment that's most likely to be present= " > translates to "GNU/Linux/gcc", doesn't it? Which means MacOS and Window= s > lag. A bootstrap using an existing "Pure Ruby" (Ruby plus Rake plus > RubyGems, etc.) makes a lot more sense. >=20 Short of implementing a C compiler in Ruby (I give it a month or two before someone announces a 0.0.1 version of that), those requirements aren't going away - you still have to shell out to a C compiler, which is by far where most build system porting problems lurk (compiler switch semantics, different shell escaping, directory names with spaces innem.) I guess the original poster's point was porting the build environment to Ruby, which, while removing a dependency some people don't have (A POSIX build environment), would introduce a dependency most people that want a ruby interpreter don't have (a ruby interpreter). You'd need -some- form or Ruby to bootstrap (a precompiled miniruby perhaps), and if you're geek enough to want a self-built Ruby on non-POSIX platforms (e.g. Windows), getting a POSIX environment can't be that hard. (I trust you don't need any hints on that.) Moving to rake instead of make might be of benefit though if it lets you get rid of some spaces-in-pathnames woes. (Since you don't have a string evaluated by a shell at umpty barely predictable spots, something for which I'd like to stab people responsible for Unix shells into vulnerable places with plastic forks many times.) But it's still not going all away yet, e.g. the autotools remain. I just don't see a full rewrite both coming anytime soon, and since I doubt one would be doable without more or less a full Ruby install, I don't see much benefit as opposed to just going as far as you can push the (presumably trivial to build) miniruby. David Vallner --------------enigAA0CF57FBC687298060A471F Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) iD8DBQFFRVTsy6MhrS8astoRAmEEAJ4xo1euxygyPsdZpYUWzi6l2qTzeQCdEtza XTZxPwo8gWdURnJQLddOyQM= =Q6po -----END PGP SIGNATURE----- --------------enigAA0CF57FBC687298060A471F--