CLOUD COMPUTING TOPICS

BLOG-N-PLAY.COM
Dog, Hit at 70mph, Gets Embedded in Grill and Lives
TOP THREE LINKS YOU MUST CLICK ON


Java vs Dynamic Languages: Sun's James Gosling "Didn't Get The Memo," Says Blogger Ryan Tomayko
'One year ago, this type of behavior could be attributed to a lack of documentation and discussion on these issues,' says Ryan Tomayko, referring to James Gosling's recent dismissal of PHP and Ruby as 'scripting languages' with 'really serious scaling and performance problems.' But no longer, Tomayko argues.
Reader Feedback: Page 1 of 2

After all, we all know PHP can be used to write any kind of full featured servers, including a web server.

OPS, Php is not multithread.

Suck =/

The distinction of "java vs 'dynamic' languages' is misleading. Java is also 'dynamic' because it uses dynamic, late binding (between invocation and implementation) at run-time. The more important differences here are whether a language is strongly typed and whether a language is a 'scripting' language or not. Strongly typed languages validate invocation parameters against declared parametric signatures - a general purpose feature that is known to help catch errors earlier in development. A weakly typed language can be easier to get up & running without having to fully flesh out one's object/type models, but can be vulnerable to unexpected runtime results that are hard to debug. A 'scripting' language is a language whose compilation unit consists of a discrete segment of source code (i.e. a statement) that is relatively small compared to a complete logical or source module. A 'compiled' language is one whose compilation unit corresponds to or exceeds the scope of complete logical or source modules. Although most scripting languages evaluate just prior to execution, that is not necessarily always the case. However, the scope of the compilation unit has many effects on the capabilities and behavior of the language. A scripting language can literally have subsequent lines of source in a given source stream changed 'on the fly'. On the other hand, a compiled language can be analyzed and optimized with regard to a larger scope of the source, resulting in large performance gains. Both models have their place in the world.

Do you have seen JASCO language (see: http://ssel.vub.ac.be/jasco/ )? It is like a dynamic aspect *java* language, which has many good sides of ascpetj, but has many more, dynamic properties. Does somebody done something commersiell with JASCO?

Here is how I would define a scripting/dynamic language: a language that allows developers to quickly write code by deferring bug discovery until runtime instead of compile time. If your goal is to get software up and running quickly, then perhaps a scripting/dynamic language is the right answer. However, software costs are primarily driving by quality and maintenance. It is well established that the cost of fixing bugs increases dramatically the later they are found. Compiled languages allow an upfront investment to be made in terms of quality and maintainability. In my view, this is the primary benefit of using a compiled language.

I recently learned that the second "round" of a "debate" is for each person to criticize his/her own arguments.

Also, being an experienced software engineer with a B.S. degree in Computer Science, and being having practical programming experience using C, C++, Java, SmallTalk, UNIX, Objective-C, AppleScript, Perl, and PHP, I find myself to be an exception to Ryan Tomayko's "mild accusation" (I mean that seriously) that those who like Java were somehow "lured" into it and never explored other technologies. (I believe that's what he said.)

Concerning the term: "Dynamic Languages": I have never described certain "languages" that instruct a "Turing Machine" as "dynamic". I was taught that that certain "computer languages", for lack of a better term (i.e.: English, French, Japanese, etc.), ran on a "runtime model".

Exception - (First: Pre-qualifying my possible ignorance here.) If a program is written, then compiled, and then statically linked, I do not believe it requires a "runtime model". C and C++ would such examples- thus the C++ "fragile base class problem".

However, I always include the term "runtime model", when describing the 'dynamic languages': "dynamic computer languages with a runtime model". The "runtime model" provides 'linking' during "runtime" instead of "compile"/"build" time. There are pros and cons to each.

One last thing: I do agree that there is a difference between "Programming Languages" and "Scripting Languages".

Sincerely,
David

I just sat through a presentation that included a description of Sun's new scientific programming language Fortress. It is described as a compile on demand language, no byte code. So basically the future of programming languages according to sun is a scripting languge.

I agree with Gosling almost 100%. We have a glut of scripting languages and they "do" get their simplicity at the expense of general purpose features like strong type checking and strong exception handling. Web oriented scripting languages "can" be used for other purposes in the same way that SQL can be used to write non-database applications. But why go there? The problem with the proliferation of languages is that it divides the workforce and wastes their time re-writing applications in new languages. If we want special purpose simplicity - we should use graphical application generators.

Insightful, funny, relevant. IMHO, Mr Gosling is a living legend, but he's also got something to sell and it skews his message sometimes. I WISH I could get my employer to take Dynamic Languages seriously, but the corporate world is a little backwards, and managers typically out-of-the-technology-loop, so static is often the order of the day. For now.

Just one note on scallability. Most php-scales-well rants based on share-nothing horizontal scallability are fine unless you hit a problem that is related to modifying/storing information not only reading. In such case the story is totally different. And it's the fuel that drives development of so called enterprise architectures.

I don't understand what all the fuss is. Who cares what James Gosling thinks? He's an obviously interested party, with a party line to spew.

There are lots of industry luminaries, all spewing their corporate lines.

The thing is, as you point out in your article, the knowledge that this is spew is well-documented. Either now or in months or in years, everyone who can have their mind opened will have their mind opened, just by the current motion and inertia that platforms like Rails and PHP possess today.

By arguing with Gosling, it's making his words more legitimate. Like there's a debate here. There's no need for debate. We don't need to prove him wrong with articles and blog posts. We just need to keep successfully building real, working systems using the tools that we feel are appropriate.

As the current Nike commercial (running during college basketball) says, "Let your game do the talking."

Ok since your beating gosling up, you really should know the facts as well, for instance Ruby really doesn't scale well and it doesn't support unicode so most web dev is out. Its a nice tool language but not for real apps, sure the mom and pop usa based shops it will work for a bit but get real. I think all of the languages out there are useful, they are all being used...none of them do it all nor should the always be used. So please stop the childish rants about Java and use what you want, if you don't like something leave it alone

hi there,

James Gosling did a lot of work on LISP to build Emacs.

I guess there's a perspective of someone who's done a whole breadth of applications using Java. We all know that Ruby/Python can be used for 80% of the applications that Java can be used. But we know (from the 80/20 rule) that the only 20% of the journey is done when you say that 80% work is done. The last 20% takes 80% of the effort. If you're happy with the 80% work, fine.

When he specifically says that breadth is NOT there in the other languages, you should NOT jump to conclusions about his motives. If you ask Bjarne Stroustrup about C++, he is known to defend C++'s successes in a wide area of applications (which is wider than Java's). Gosling has higher motivation than Bjarne ever did to keep his created language going but at the same time we should not put ignorance and ill-motives.

Even though one tends to accept/recognize when the trade press like to sensationalize such things, I feel terrible when a PhD/M.S talks like a Slashdotter/high schooler/"Digg"er. You expect more from people who have an M.S - after all they don't go to such schools just to learn Compilers.

BR,
~A

Perhaps it's time to nail down the term scripting language - my vote goes for "Anything with a virtual machine is scripting language" - then James might not feel so left out.

What is a scripting language? I mean, what's the bare bones of it, technically speaking? It is a language executed as script. That means it is called (from somewhere), then loaded, executed and ends, that's all, and what concerns me, I'm perfectly fine with that. It's the same for me if it is interpreted, pre-compiled into P-code (or similar) or executable, CGI or Fast-CGI, module or stand-alone, as long as it behaves like intended I'll be fine.

So why all the fuss about it? Why does Gosling mention it anyway, why are so many users/programmers upset with the term "only scripting"?

I think the main reason is that there are different programming philosophies behind the kind PHP (Ruby, Perl etc.) on the one side is used in programming and Java is on the other side. That's all, simple as that. Whereas a "scripting" language is executed and dies afterwards (which has its advantages like rapid development, ease of deployment etc.), a "compiled" language does not (need to have, so it may use caching/pooling/memory objects much more efficient and has not to rely on backend systems and their performance that much).

In my opinion that was what Gosling meant saying that scripting languages "[...] have really serious scaling and performance problems." Okay, distilling all these into such a little sentence like Gosling did has a taste of FUD, but nevertheless Gosling may have relied on the fact that people who read his interview are a little bit technically educated (and even I did not point out anything that new until now either).

So shame on Gosling, he could have made his point more clear on that. But on the other hand I do not have to read "Effective Java Advocacy Beans" section 6.8.3 to see another kind of FUD raising on.

And of course I could do application programming using scripting languages.

I can do something very similiar to scripting in compiled languages too, using JSP or ASP or whatever...I do not see the point.

Just my $0,02

What is a scripting language? I mean, what's the bare bones of it, technically speaking? It is a language executed as script. That means it is called (from somewhere), then loaded, executed and ends, that's all, and what concerns me, I'm perfectly fine with that. It's the same for me if it is interpreted, pre-compiled into P-code (or similar) or executable, CGI or Fast-CGI, module or stand-alone, as long as it behaves like intended I'll be fine.

So why all the fuss about it? Why does Gosling mention it anyway, why are so many users/programmers upset with the term "only scripting"?

I think the main reason is that there are different programming philosophies behind the kind PHP (Ruby, Perl etc.) on the one side is used in programming and Java is on the other side. That's all, simple as that. Whereas a "scripting" language is executed and dies afterwards (which has its advantages like rapid development, ease of deployment etc.), a "compiled" language does not (need to have, so it may use caching/pooling/memory objects much more efficient and has not to rely on backend systems and their performance that much).

In my opinion that was what Gosling meant saying that scripting languages "[...] have really serious scaling and performance problems." Okay, distilling all these into such a little sentence like Gosling did has a taste of FUD, but nevertheless Gosling may have relied on the fact that people who read his interview are a little bit technically educated (and even I did not point out anything that new until now either).

So shame on Gosling, he could have made his point more clear on that. But on the other hand I do not have to read "Effective Java Advocacy Beans" section 6.8.3 to see another kind of FUD raising on.

And of course I could do application programming using scripting languages.

I can do something very similiar to scripting in compiled languages too, using JSP or ASP or whatever...I do not see the point.

Just my $0,02


Feedback Pages:


FEATURED WHITE PAPERS
YOUR FEEDBACK
REG CROWDER wrote: It also makes the point that people who market things should think about who has money to spend, now that the US and UK are sliding into a bit of a recession. I pounded London marketers over the head on this issue at this URL: http://www.utalkmarketing.com/Blogs/DisplayBlog.aspx?BlogID=286 REG CR...
Unknown wrote: Nice article! I think if you add some examples to each of the tools you were mentioning in the article will help the reader to try the concepts you mentioned here.
Duty Editor wrote: > queZZtion commented on the 11 Oct 2006: > >> How come this article makes no mention of >> financial terms of the deal?? Financial terms of the deal were not disclosed at the time of writing.
linux news desk wrote: Collax named Christopher Ackley to lead its U.S. Channel Sales team. Collax works with solution providers to deliver a suite of open source applications to help run small and growing businesses, including security, networking, and communication with no Linux knowledge required.
enterprise open source news desk wrote: Mertech Data Systems, provider of ISAM to SQL Database Connectivity (ISDBC) solutions has been notified by KEH Camera Brokers that Flex2SQL was successfully used to quickly transition from a proprietary DataFlex database to a MySQL database management system. Flex2SQL?s plug-in approach allows compa...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS

SYS-CON FEATURED WHITEPAPERS

LATEST CLOUD DEVELOPER STORIES
If you think your network is safe from the new strains of content security threats, think again. Tod...
Symantec has announced Veritas Operations Services, a new cloud computing-based online services plat...
rPath has announced support for the Ubuntu and CentOS Linux operating systems as part of rBuilder an...
We are using software applications more than ever before. As the demand for new capabilities and fun...
Amazon has launched an HTTP content delivery service (CDN) called CloudFront that works with its S3 ...
You’ve heard of downsizing and rightsizing, so how about Cloudsizing? As properly defined, Cloudsi...
Atlanta-based TechOperators, a new early stage VC targeting cloud computing and SaaS as well as Inte...
Cloud-based tools, including large-scale data-intensive computing as offered by Hadoop, are key to t...
SYS-CON's Cloud Computing Expo will take place in San Jose. Seems like everyone is coming in to the ...
Last Friday Sun Microsystems, its fortunes about as low as a snake’s belly, moved its StarOffice f...
CA and VMware have announced an expansion in their long-standing relationship centered around the cr...
Capgemini has announced an agreement signed between Capgemini UK plc and Amazon Web Services, extend...
LynuxWorks has announced immediate availability of LynxSecure 2.0, a next-generation separation kern...
Moderro Technologies will debut its Xpack Internet Computer – an integrated (hardware, operating s...
GigaSpaces Technologies has announced that Nati Shalom, founder and CTO, will be presenting at The C...
The BlackBerryR Technical Webcast Series is designed to help BlackBerry administrators better manage...
Yahoo has confirmed that Jerry Yang will be stepping down as soon as the board can find a new CEO. Y...
One thing is pretty clear to me from an investment perspective. I am not going to invest in the next...
This is an incredibly important time for the cloud computing area. What are some of the new directio...
SYS-CON Media announced today that its 1st International Cloud Computing Conference & Expo sold out ...
ADS BY GOOGLE