[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

Re: two good poems; Wether perl any good?



Hi there!

> 2. The very concept of a Virtual machine makes sure that a Java byte
> code will never run as fast as any other compiled program..
i guess you have herd of the new ms .net innitiative. With .net ms has also
now brought forward the idea of a managed virtual machine like environment,
so there has to be some logic behind the virtual machine concept. As far as
performence goes, we might come to a day, where a interpreted virtual
machine environment might be faster than a normal statically compiled
program. The main reason for this is that with an emulation layer like the
virtual machine, you  can tie the jit very closely to the actual processor
in use. for example say that a certain code fragment if optimised for an
athlon wud severely degrade performence under a pentium III or vice versa.
When u come to this kind of a scenario, then u wud either optimise the code
so that u get avg performence from either cpu or u wud optimise for either
or both the cpus. Now this might sound trivial, but when you have big apps
every small optimisation makes big improvements. This is one area in which
future virtual machines can improve. Another area where a simulated
environment is better is when you do run time branch and code rearrangement
optimisations. Any code is composed of many branches. Now if u regroup the
code, depending on the most popular branch decisions, then you can get very
good performence increases. This is a basic optimisation done by the cpu
itself, but when done in software it can be extremely effective. In fact one
hp project used these kinds of tricks to emulate a particullar hp risc
processor, and the results were quite surprising. A programming, running
under user space emulation of the host cpu (similar to emulating a p3 inside
a linux user program) ran faster than in native mode by upto 30%. These are
just 2 points in favour of a emulated virtual machine environments as far as
performence goes. Now consider another very key advantage of java. You
compile once and it runs everywhere (well almost!!). This is a very
important thing if you are trying to write scalable apps. My java app can
scale from a small linux box to a Sun E10000 w/o any need to recompile the
code!!!


> 3. It is nothing specific to any language. Spend a good amount of your
> implementation time on design and you are guaranteed to bring down bugs
> and increase efficiency. get a group of good programers who can code and
> interact well with others and you can have a application running
> beautifully for years. I have seen mainframe programs running for 15-20
> years with no problems. As for perl I am not sure why anything would be
> wrong with it. I have faced as much problem reading bad C/C++ code as
> anyone would face in reading a badly written perl code. Someone once
> pointed out all those $ thingys spread all over the perl code but as far
> as I see it people misuse it more than they use it in their perl code.
> The same applies to Embperl code too. All I would say is that writing
> good/functional/readable code is a art and depends on the skills of the
> programmer not on the programming language.
yeah this is true, but then again i have seen too many perl programs which
look like entries of an obfuscation contest!


> 4. To go with something which is very much hyped up and being used in
> many places for that reason is a mob mentality which cant sustain itself
> in the long run. It is easy to get mediocre programmers in any language
> you care to be aware of - personally I think it is as difficult to find
> a good Java programmer as it is in any other language. But courtesy the
> hype you are 10 times more likely to setup a team of mediocre java
> programmers who will be able to mess up a program than in any other
> language.
well when we tried to search for programmers who cud do perl, we hardly
found any (thats real sad though!!!) but with java we got lots of
applications. Also with java slowly replacing c/c++/pascal in univs
everywhere, there is bound to be a lot more java programmers who are good
programmers!!!

Bye,
    /\ |\/| |3 /\ r