There's no "beg" here. OSS developers get funding because companies think their free software benefit them. e.g. Apple *needs* WebKit because it's critical that they have it, and can customize it, on the iPhone.
But, anyone who's proficient in any language can be just as productive as another programmer whose just as proficient in another language.
Really? If you have two programmers who both have the whole program perfectly in their heads, the programmer writing in a language that requires fewer keystrokes win.
You can also write a JavaScript prompt in a browser yourself by using a text area and the eval() function. Or typing "javascript:..." in the URL bar, or using the Firebugs console.
So, yes, JavaScript DOES have an interactive prompt.
LISP gives you an interactive shell as well. But you can compile LISP code to make it run faster. Same for Python, though I don't know how much a.pyc file is faster than a.py file.
Anyway, with languages like LISP or Python, I can perfectly give you a compiled software package based on these "scripting languages" that you'll have a hard time modifying with a text editor. And (for LISP at least), there's a very substantial difference in performance (sth. like 100x for math intensive stuff) between executing the compiled file and the source file - substantial enough that well-written compiled LISP code can approach the performance of a compiled C executable.
If the interactive shell is just a feature of the language, yet you can compile it so that you can distribute the software without the source code, and have the performance of traditional compiled languages as well - then, would it be so important to distinguish the language into scripting vs. "real" anymore? The scripting part can just be seen as a feature of the language, but on the other hand it may be able to do anything a "real" language can do.
It is possible to ship a Python program in its "compiled" form (i.e..pyc files), many Python-based BitTorrent clients do that.
The distinction between scripting language and programming language these days are blurring. Just like compiled vs. interpreted languages.
It's not the language's fault that programmers suck. If you hate JavaScript because it is hard to read and understand, Perl has a worse reputation in this area. Yet, I've worked with Radius server code in Perl 5 years ago that's well commented and well documented, and it was a pleasure to work with.
If you doubt my experience with JavaScript, I'm currently a core developer at FCKeditor (note my name in my homepage), and in 2005 I've written a large scale AJAX app from scratch that's now still being developed and extended by a team of 20+ developers, and is currently being used by multiple cities to manage their citywide Wi-Fi installation.
But of course, credentials are useless in technical discussions. I told you that only because you asked. My point is, it is entirely possible to write easily readable code in JavaScript, Perl or C - as long as you have good development practices in place (e.g. have good coding conventions, code reviews, good comments, good documentations). FCKeditor's internal code doesn't have good documentations right now but we have the former three items, and after a month the code base was easy to work with. Everything in CKEditor 3 is going to be well documented with JSDoc. I recommend you to go take a look at it.
And... finally, if you *need* to have declared variables because you make too many typoes... Ctrl-P in vim is your friend.;)
Pwnergy.
Pwnergetic.
Pwnagement.
Senior Pwnagement.
General Pwnager.
Pwnaging Director.
Pwnership.
Empwnerment.
High pwnage-added services.
Bleeding edge pwnonology.
Where do you want to pwn today?
To pwn the world's information.
Pwn different.
Now do the same thing in DOM. Can Javascript tell which text is selected? No. Can it set the text color, size, or font? No. (There is such a thing as a rich-text textarea, with those options, but DOM API has virtually no access to any of it.) It's simply ridiculous how incomplete DOM is, and that's where your true problems lie.
That's what DOM Range and DOM Selection are for. These are implemented by Gecko, Opera and Safari. IE has an alternative implementation that can do pretty much the same thing. Also, there's the document.execCommand() method for modifying rich text areas if you don't wanna write your own custom logic for making bold text or converting paragraphs to lists. There's no concrete standard on execCommand() yet but all popular browsers support it with a common set of commands.
If you say rich text editing in JavaScript is hard and can use much room for improvement, then I'd agree with you. But saying that such functionality does not exist, is wrong. There's enough misinformation everywhere about JavaScript as it is.
I don't think JavaScript is a terrible language, but compared to the languages I've used in the past it doesn't hold up. I was shocked to hear about client-side JavaScript and AJAX; I couldn't believe the next generation web-client programming model was based on a language that doesn't require variable declarations. It's a nightmare to debug.
Have you ever used a scripting language before? It's not like PHP, Perl or Python require variable declarations as well. Plenty of popular websites (e.g. Wordpress) are mostly written in languages that do not require variable declarations. If you insist that "real" programming languages require variable declarations... I'll just tell you that "real" programming languages get the job done.
If we can live to 1000 with the technology we have in the first 100, then we'll probably become immortal as well with the technology that comes in the remaining 900 years.
Oh, you just blasted my head to pieces with a shotgun? No problem, watch as my iPhone 3000 reassemble my body anew and upload my consciousness to it.
That is not exactly an apples to apples comparison. The Apollo program failed quite a number of times before Apollo 11 was able to reach the moon safely and back. NASA has decades of experience in making spacecrafts, and they're still not completely safe. SpaceX doesn't have the same amount of experience, nor do they have the same generous government funding and public support back in the '60s.
With other factors being entirely different, it does not follow logically that you can just isolate one factor (funds being paid to politicians and managers vs. no such funds) and conclude that is the cause of SpaceX's troubles.
Last time I checked eugenics is categorized under the "pseudo-science" section - it is possible that a perfectly good pair of parents can breed an asshole offspring, and a criminal pair of parents can breed a perfectly good offspring.
Add that to the many "I hope he'll burn in Hell" comments here, I feel there's too much hatred in our society already. There's no crime worth putting someone in eternal pain.
Actually this is an argument for open source, although not one of the strongest. If you use popular open source software, you get many bugfixes for the open source part for free - there's no guarantee the bugfixes posted with the project update will be what you need though, but there's a good chance it is.
Man, I can't believe I need to argue this on Slashdot.
Turing machine is a mathematical construct. It is just like you can construct a 3D or 4D or even 160D Cartesian space in your brain, in paper, or in a computer at any time you like - but they are just mathematical constructs! Just look at Wolfram's page, it says "A Turing machine is a theoretical computing machine invented by Alan Turing (1937) to serve as an idealized model for mathematical calculation."
To prove the computer you're using to post thing to Slashdot is not a Turing machine - just ask yourself - Can you computer fit in a program that is infinite in length? Can you computer run a program that requires an infinite amount of memory? If you answer "no" to any of my questions, you are not using a Turing machine.
You don't get the tile ecological damage if you drill them outside of your bases and harvest them with crawlers.
You will, however, still get the mineral ecological damage if your bases' mineral production goes above some limit. Tree farms and hybrid forests can help mitigate those.
There's no "beg" here. OSS developers get funding because companies think their free software benefit them. e.g. Apple *needs* WebKit because it's critical that they have it, and can customize it, on the iPhone.
But, anyone who's proficient in any language can be just as productive as another programmer whose just as proficient in another language.
Really? If you have two programmers who both have the whole program perfectly in their heads, the programmer writing in a language that requires fewer keystrokes win.
If you want to write a GUI with Python, Perl and Ruby, you can use wxWidgets. Works for Mac OS X, Windows and *nixes.
You can also write a JavaScript prompt in a browser yourself by using a text area and the eval() function. Or typing "javascript: ..." in the URL bar, or using the Firebugs console.
So, yes, JavaScript DOES have an interactive prompt.
LISP gives you an interactive shell as well. But you can compile LISP code to make it run faster. Same for Python, though I don't know how much a .pyc file is faster than a .py file.
Anyway, with languages like LISP or Python, I can perfectly give you a compiled software package based on these "scripting languages" that you'll have a hard time modifying with a text editor. And (for LISP at least), there's a very substantial difference in performance (sth. like 100x for math intensive stuff) between executing the compiled file and the source file - substantial enough that well-written compiled LISP code can approach the performance of a compiled C executable.
If the interactive shell is just a feature of the language, yet you can compile it so that you can distribute the software without the source code, and have the performance of traditional compiled languages as well - then, would it be so important to distinguish the language into scripting vs. "real" anymore? The scripting part can just be seen as a feature of the language, but on the other hand it may be able to do anything a "real" language can do.
It is possible to ship a Python program in its "compiled" form (i.e. .pyc files), many Python-based BitTorrent clients do that.
The distinction between scripting language and programming language these days are blurring. Just like compiled vs. interpreted languages.
Do you happen to be working at Microsoft?
Oops... I've written my reply to myself. My post below was meant for you.
It's not the language's fault that programmers suck. If you hate JavaScript because it is hard to read and understand, Perl has a worse reputation in this area. Yet, I've worked with Radius server code in Perl 5 years ago that's well commented and well documented, and it was a pleasure to work with.
;)
If you doubt my experience with JavaScript, I'm currently a core developer at FCKeditor (note my name in my homepage), and in 2005 I've written a large scale AJAX app from scratch that's now still being developed and extended by a team of 20+ developers, and is currently being used by multiple cities to manage their citywide Wi-Fi installation.
But of course, credentials are useless in technical discussions. I told you that only because you asked. My point is, it is entirely possible to write easily readable code in JavaScript, Perl or C - as long as you have good development practices in place (e.g. have good coding conventions, code reviews, good comments, good documentations). FCKeditor's internal code doesn't have good documentations right now but we have the former three items, and after a month the code base was easy to work with. Everything in CKEditor 3 is going to be well documented with JSDoc. I recommend you to go take a look at it.
And... finally, if you *need* to have declared variables because you make too many typoes... Ctrl-P in vim is your friend.
Pwnergy.
Pwnergetic.
Pwnagement.
Senior Pwnagement.
General Pwnager.
Pwnaging Director.
Pwnership.
Empwnerment.
High pwnage-added services.
Bleeding edge pwnonology.
Where do you want to pwn today?
To pwn the world's information.
Pwn different.
Hong Kong
1Gbps ~ 215 USD per month
200Mbps ~ 90 USD per month
100Mbps ~ 35 USD per month
(USD prices are converted from the quoted Hong Kong dollar amount rounded to the nearest 5 dollar)
I'm out of my mod points today, but that is truly amazing!
Now do the same thing in DOM. Can Javascript tell which text is selected? No. Can it set the text color, size, or font? No. (There is such a thing as a rich-text textarea, with those options, but DOM API has virtually no access to any of it.) It's simply ridiculous how incomplete DOM is, and that's where your true problems lie.
That's what DOM Range and DOM Selection are for. These are implemented by Gecko, Opera and Safari. IE has an alternative implementation that can do pretty much the same thing. Also, there's the document.execCommand() method for modifying rich text areas if you don't wanna write your own custom logic for making bold text or converting paragraphs to lists. There's no concrete standard on execCommand() yet but all popular browsers support it with a common set of commands.
If you say rich text editing in JavaScript is hard and can use much room for improvement, then I'd agree with you. But saying that such functionality does not exist, is wrong. There's enough misinformation everywhere about JavaScript as it is.
I don't think JavaScript is a terrible language, but compared to the languages I've used in the past it doesn't hold up. I was shocked to hear about client-side JavaScript and AJAX; I couldn't believe the next generation web-client programming model was based on a language that doesn't require variable declarations. It's a nightmare to debug.
Have you ever used a scripting language before? It's not like PHP, Perl or Python require variable declarations as well. Plenty of popular websites (e.g. Wordpress) are mostly written in languages that do not require variable declarations. If you insist that "real" programming languages require variable declarations... I'll just tell you that "real" programming languages get the job done.
You cannot enforce a contract with illegal considerations from either party. e.g. You cannot enforce a contract concerning drug trafficking in court.
The first time I installed XP to a computer, it had only 128MB of memory. And it was ok. You have forgotten how long WinXP has been in the market.
If we can live to 1000 with the technology we have in the first 100, then we'll probably become immortal as well with the technology that comes in the remaining 900 years.
Oh, you just blasted my head to pieces with a shotgun? No problem, watch as my iPhone 3000 reassemble my body anew and upload my consciousness to it.
So, conscientious people will run away from the job because it is too gruesome, and who's left to take the job? The world's most perfect psychopaths?
The two statements from Microsoft in the summary is just their usual FUD. Spreading FUD doesn't mean the originator is ignorant, though.
That is not exactly an apples to apples comparison. The Apollo program failed quite a number of times before Apollo 11 was able to reach the moon safely and back. NASA has decades of experience in making spacecrafts, and they're still not completely safe. SpaceX doesn't have the same amount of experience, nor do they have the same generous government funding and public support back in the '60s.
With other factors being entirely different, it does not follow logically that you can just isolate one factor (funds being paid to politicians and managers vs. no such funds) and conclude that is the cause of SpaceX's troubles.
Which is exactly why all the Nazi-claiming parents have no idea what they're talking about.
Last time I checked eugenics is categorized under the "pseudo-science" section - it is possible that a perfectly good pair of parents can breed an asshole offspring, and a criminal pair of parents can breed a perfectly good offspring.
Add that to the many "I hope he'll burn in Hell" comments here, I feel there's too much hatred in our society already. There's no crime worth putting someone in eternal pain.
Actually this is an argument for open source, although not one of the strongest. If you use popular open source software, you get many bugfixes for the open source part for free - there's no guarantee the bugfixes posted with the project update will be what you need though, but there's a good chance it is.
Man, I can't believe I need to argue this on Slashdot.
Turing machine is a mathematical construct. It is just like you can construct a 3D or 4D or even 160D Cartesian space in your brain, in paper, or in a computer at any time you like - but they are just mathematical constructs! Just look at Wolfram's page, it says "A Turing machine is a theoretical computing machine invented by Alan Turing (1937) to serve as an idealized model for mathematical calculation."
To prove the computer you're using to post thing to Slashdot is not a Turing machine - just ask yourself - Can you computer fit in a program that is infinite in length? Can you computer run a program that requires an infinite amount of memory? If you answer "no" to any of my questions, you are not using a Turing machine.
You don't get the tile ecological damage if you drill them outside of your bases and harvest them with crawlers.
You will, however, still get the mineral ecological damage if your bases' mineral production goes above some limit. Tree farms and hybrid forests can help mitigate those.