But these serve different purposes. The kind of app you'd use Sinatra for is the kind of app Rails would be worse at, and vice versa. Sinatra is more in the same space as Camping, and I don't know if anyone still uses Camping.
Sure, but hasn't the Python community kinda imbraced Django as the One True fullstack framework?
Excuse me... Free has little to do with price. And in the case of GPL and LGPL, the price is as follows: "If you use the software you have to provide the source and any possible modifications you might have made to the people you sold/gave the software to." That's the price. Whether you view it as worth nothing or priceless all is in whether you're just a user or a developer.
Well, to be pedantic, that is the *cost* of the (L)GPL. The price is 0.
I am not an economist.
How exactly do you put something into public domain legally, such that you can legally protect them to be in public domain?
In some countries, you can't really. That's why we have the WTFPL. The Wikipedia article says there are only 11 uses of it on Freshmeat, but it's rather commonly used on GitHub.
That's OK. Maybe some day Slashcode will actually render <comic book guy> and </comic book guy> tags. About the time they decide to implement more than 2% of the HTML entity set.
Of course, by that time, everyone else will have been using Markdown (or similar) for 10 years.
My statement is still valid. you hand someone your card to pay for gas, they can go in and duplicate it very easily with a magnetic stripe just by swiping it through a reader.
You go inside to pay for gas? I just use the cardswipe/pinpad on the gas pump, which I thought was pretty standard practice these days.
So in summary they haven't been getting similar improvements in speed.
Perhaps that's because they didn't suck so much in the first place (with the possible exception of MRI)?
After all, Javascript is now faster (except for pi and reverse-complement).
http://shootout.alioth.debian.org/u64/benchmark.php?test=all&lang=v8&lang2=yarv
http://shootout.alioth.debian.org/u64/benchmark.php?test=all&lang=v8&lang2=python3
Because everyone chooses a language based on raw execution speed, amirite?
You were comparing relative increases between different implementations of one language before; now you're comparing the fastest implementation of one language to the not-fastest implementations of others. =_=
Even if they look vaguely similar on the surface, all of the languages you've mentioned are quite different internally. Some performance changes that would take too much effort to change, some won't happen for philosophical reasons, and a great deal more are not applicable to anything other than the language they were written for.
> There's "fat-val", "tracer JIT" and "method JIT". Just curious, given all these advances in JS speed, are there technical reasons why stuff like Python, Ruby and Perl aren't getting similar improvements in speed?
Perl... well, it's either dead or incredibly alive, depending on who you ask, but all development seems to be focused on Perl6.
Ruby doesn't have an "official" interpreter. The standard C implementation uses YARV for 1.9, which is considerably better than MRI (which was in 1.8). Rubinius is supposed to be faster, but isn't quite ready yet. Ruby Enterprise Edition seems to be fairly popular, but doesn't have 1.9 compatability yet. I believe JRuby is fairly widely-used, and it seems that it can perform better than YARV sometimes (and consistently better than MRI).
On the Python front, Unladen Swallow seems to be chugging along, although I'm not sure what we'll get out of it. PyPy is quite promising, and is faster than CPython in many benchmarks.
Nowhere. But right now it's the most widely adopted and implemented (pretty much everyone but Firefox either does or is planning to support it).
And pretty much everyone except Apple is planning on supporting WebM (or is, currently). Sure, IE will only support it if a vp8 codec is installed on the machine, but that counts enough for me.
if they think that Google, who provides about 85% of Mozilla's total revenue, is going to sit back and let them take the technical lead over Chrome, they're nuts.
Except that Google benefits from faster Javascript engines in any browser, not just Chrome. Firefox is a popular browser, and if Firefox can execute Javascript faster, that means that Google's web apps (which I am just going to guess account for more revenue than Chrome) will perform better. It also means that Google could potentially do more, i.e. have heavier Javascript programs, without worrying that people are going to get annoyed at how slow their applications are. How does Google lose here?
It was my impression that Google created Chrome primarily to push browser speeds (in particular, javascript) forward. Mozilla wouldn't be nearly so concerned with it now if it weren't for V8.
Do Behavior Driven Development with Cucumber http://cukes.info./
... or one of the many non-Ruby tools.
You misunderstood what I was saying - unit tests should be testing functionality, rather than error handling on every possible type of input, etc. My phrasing was rather misleading, so I'll take the blame for that one.
I should also make the point that dynamically-typed languages do not necessarily allow variables to be used without declaration. `var foo` would be a perfectly acceptable statement (and is, I believe, how C# handles implicitly-typed variables), but none of the (popular) dynamically-typed languages of today have such a thing.
Machines have less problems. I'd like to be a machine. -- Andy Warhol