From: Dan Sugalski Date: 2002-12-18T06:53:34+09:00 Subject: Re: Speedy Ruby (was: Re: help -- persuade my boss to adopt ruby) At 2:55 AM +0900 12/18/02, Mark Probert wrote: >At 01:07 AM 12/18/2002 +0900, Dan wrote: > >>None of those, actually. If I was going to look for the speedups I >>was talking about, I'd compile straight to executable code, with a >>heck of an optimizer in the middle. It requires good flow checking >>to determine implied types where possible, and on-the-fly code >>generation and regeneration (and recompilation) based on the likely >>case in the source and the changes in the source as methods get >>redefined. It's a really cool segment of computer research, but >>it's not an easy segment. > >And with dynamic typing and late binding it gets very non-trivial. >Got it. > >On the general topic, Dan, when do you decide that doing this optimisation >is a better solution than, say, moving to a Septium 5.0 with 1Tb of memory? When I realize that I can't afford to replace everyone's hardware with 42THz Zeta 9 zillion processors with the thiotimoline Overclock Driver. :) It's important to keep in mind where this is and isn't appropriate as a point of effort. While 99.9% of the people using a language either don't have the interest or don't have the skill to do the work, it only takes a few people to do it and everybody wins. It's a force-multiplier thing, the same way that a comprehensive library is--one person (or a few people) do something, and dozens or thousands benefit from it. Whether this is the right place for any individual to do work depends on their skills and what they see as needing done. Matz has the skills, but he may not have the folks close-by to do the work with, and there are certainly dozens of other places he can do things that may ultimately benefit more people. (I admit, not everyone is nuts for speed :) On the other hand, there may be folks working towards, say, a graduate degree that may have the time and skills for this, but not for language extension or library writing, who could be in a position to do this. (It's actually a really good place for folks doing grad or postdoc work, as the academic system, in the US at least, actively discourages full end-to-end solutions, but would reward the rework of a (relatively) small piece of an existing system) Or who knows, maybe having me say it's a tough problem will get someone so incensed that they decide to do it anyway, just to prove me wrong. Which would be OK too. :) -- Dan --------------------------------------"it's like this"------------------- Dan Sugalski even samurai dan@sidhe.org have teddy bears and even teddy bears get drunk