On Thu, Mar 15, 2012 at 03:27:32PM +0100, Jesse Phillips wrote: > On Thursday, 15 March 2012 at 07:09:39 UTC, so wrote: > >Hello, > > > >Not related to D but this is a community which i can find at least > >a few objective person. I want to invest some "quality" time on a > >dynamic language but i am not sure which one. Would you please > >suggest one? [...] > I use D for scripting so I don't really have much suggestion on the > Python/Ruby front. But bash is somewhat useful.
Bash?? Are you serious?! OK, I'll admit that bash is a very useful shell and has quite advanced scripting abilities... I mean, I use bash everyday myself, but as a *dynamic language*, bash scripting is simply atrocious. Its over-zealous interpolation of everything it sees, often multiple times, is one such atrocity (from the POV of a dynamic *programming* language; I'm not questioning its usefulness in the context of *shell scripting*). This makes it nigh impossible to pass certain strings around to script functions without the shell eating some escape characters and breaking everything. You pretty much have to save everything in what amounts to global variables to prevent this, and even then every time you read/write to the variables interpolation takes place. So it's leaning-toothpick syndrome everywhere. The shell's philosophy of having minimal functionality in the actual shell itself and delegating pretty much all complex functionality to external programs is ... useful from a shell scripting POV, but extremely inefficient from a programming POV. I always remember my first job, where a colleague was having trouble with a shell script that generated some reports required by the customer, because it was taking too long to run. When they called on me to help, I found that about 99% of the time was spent forking and exec'ing subprograms (with the associated I/O delays and whatnot). I rewrote the script in Perl, and the running time was reduced from more than 2 *days* to less than 2 minutes. If I were to recommend a dynamic *programming* language, it would be anything *but* bash! T -- "Holy war is an oxymoron." -- Lazarus Long