Re: JRuby sucked up the bath water but left the baby behind.
You can not write enterprise-class, secure, web-centric software with PHP or RoR. The jury is still out on Python. To gain the benefits of Java you would need to turn the PHP language into - Java. So far, all projects that try to spit out bytecode via a non-Java language have failed. Writing enterprise-class software is difficult. There is no way around it. The idea of running PHP on Tomcat should be taken out back and executed Sopranos-style. - Jim - Original Message - From: Clifton Brooks [EMAIL PROTECTED] To: Dev Tomcat dev@tomcat.apache.org Sent: Tuesday, June 17, 2008 9:22 AM Subject: JRuby sucked up the bath water but left the baby behind. Instead of binding Ruby to Java as in JRuby, or Python to Java as in Java, we have to find a way to compile Ruby on Rails applications, .py files, and PHPs into java servlets. Although I adore programming in Java, most web developers simply find it too difficult to learn. They prefer PHP, RoR, and Python because all three are easier to learn and use without understanding. These languages don't scale as well and sacrifice run time efficiency for development time efficiency. The greatest advantages of servlets include: 1. The fact that they parse requests and generate responses through method calls instead of operating system processes or Fast CGI. 2. JNDI connectivity, particularly database connection pooling. 3. WORA and platform independence. (More a factor compared to .NET than the open source technologies.) Sadly, JRuby and Jython are just interpreters written in Java and they run more slowly than the original binary interpreters. If, instead of interpreting JRuby, PHP, and Jython, Tomcat, or some extensions for it, could compile programs in these languages into java servlets, then all of the advantages of the Java world will instantly become accessible to these popular languages. This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Here, any language compiles to platform independent, Java bytecode. I love Java as a language, and almost always prefer to develop in it, but maybe it's greatest virtues aren't syntax and grammar. Most web application developers prefer PHP for reasons similar to those which make RoR appealing. However, the technologies underneath these languages don't measure up to the JVM and Tomcat or other Servlet containers. This causes all sorts of scalability problems, and it slows down the entire internet. When and how can we grant Java infrastructure to PHP developers? When and how can we compile PHP, Ruby, Python, and other web application languages into Servlets? I dont know about the feasibility of this, some clever person can figure it out, but there is definitely a market for PHP in tomcat. The question comes up in the user groups. I imagine there are practical challenges to that and the half cocked Servlet solutions out there seem to be reinventing PHP in JNI, and doing a fairly bad job. I was wondering if an extension to the Apache runtime would not be a better way to go... APR + PHP_R kind of idea. And then just look for some cool but simple interop. Like a servlet can forward to PHP, and visa versa. ie you can just use TC for your PHP, and you can get it integrated to some degree with servlets. ... ie take two great technologies and bring them a little closer, not a competitive product, just closer coop. Make servlets and PHP better bed mates. The idea is that as Apache PHP is developed further, TC gets the leverage, with a few perks. Damn thats a nice WIKI in PHP... I'm going to drop it into TC, add the PHP_R engine to TC and forward requests to it from my servlet... something like that. If PHP starts a session in this env, servlets see it as well... so theres a little engine overlap, but otherwise Apache TC are 100% compat. Bean passing with primitive types would add a creative dimension to it. JRuby is cool, but I feel if you want to write a powerful site all in j script... well, you get what you made. I think that any leverage in that area will come from the JRE itself, now that Sun is backing ruby, in the form of a JIT Script engine or something like that in the JRE, so I think, not worth the investment. The compilation of scripts to Java could first be attempted external to TC... if they get it right, well its just a java class that TC can use. Servlet + PHP as bed mates == most internet solutions Now that product like Netbeans are bringing in PHP editors, allowing for hybrid solutions makes even more sense. Just a thought ;) --- HARBOR : http://www.kewlstuff.co.za/index.htm The most powerful application server on earth. The only real POJO Application Server. See it in Action : http://www.kewlstuff.co.za/cd_tut_swf/whatisejb1.htm ---
Re: JRuby sucked up the bath water but left the baby behind.
On Tue, Jun 17, 2008 at 9:22 AM, Clifton Brooks [EMAIL PROTECTED] wrote: If, instead of interpreting JRuby, PHP, and Jython, Tomcat, or some extensions for it, could compile programs in these languages into java servlets, then all of the advantages of the Java world will instantly become accessible to these popular languages. This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Here, any language compiles to platform independent, Java bytecode. http://jcp.org/en/jsr/detail?id=292 You just have to wait till Java 7 :-) Leon P.S. On a personal note, you simply can't build a stable reliable enterprise software with duck typed language like javascript or ruby. And running scripts in tomcat doesn't make your scripts better. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: JRuby sucked up the bath water but left the baby behind.
I love this plan - a great way to turn all other languages into Java(tm) ! :) - Jim On Tue, Jun 17, 2008 at 9:22 AM, Clifton Brooks [EMAIL PROTECTED] wrote: If, instead of interpreting JRuby, PHP, and Jython, Tomcat, or some extensions for it, could compile programs in these languages into java servlets, then all of the advantages of the Java world will instantly become accessible to these popular languages. This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Here, any language compiles to platform independent, Java bytecode. http://jcp.org/en/jsr/detail?id=292 You just have to wait till Java 7 :-) Leon P.S. On a personal note, you simply can't build a stable reliable enterprise software with duck typed language like javascript or ruby. And running scripts in tomcat doesn't make your scripts better. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Jim Manico, Senior Application Security Engineer [EMAIL PROTECTED] | [EMAIL PROTECTED] (301) 604-4882 (work) (808) 652-3805 (cell) Aspect Security™ Securing your applications at the source http://www.aspectsecurity.com
Re: JRuby sucked up the bath water but left the baby behind.
Leon Rosenberg wrote: On Tue, Jun 17, 2008 at 9:22 AM, Clifton Brooks [EMAIL PROTECTED] wrote: If, instead of interpreting JRuby, PHP, and Jython, Tomcat, or some extensions for it, could compile programs in these languages into java servlets, then all of the advantages of the Java world will instantly become accessible to these popular languages. This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Here, any language compiles to platform independent, Java bytecode. http://jcp.org/en/jsr/detail?id=292 I would have said http://jcp.org/en/jsr/detail?id=223 first, even if 292 is seriously needed performance-wise. JSR 223 was previously planned for a grand release of PHP 5 + Java interop (look for early presentations of PHP 5 five years ago, running on a J2EE server was touted as out of the box). History knows it failed. If, instead of interpreting JRuby JRuby is a bad example, since it's a JSR-223 implementation which is able to compile Ruby to Java bytecode (see http://wiki.jruby.org/wiki/JRuby_Compiler ). This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Well, not really, the .NET model compiles to the CLI, which is portable, as long as you have the CLR for your target environment, so it's not at all Windows only. Otherwise, and old page that comes up from time to time: Robert Tolksdorfs Programming Languages for the Java Virtual Machine http://www.is-research.de/info/vmlanguages/ Although I adore programming in Java, most web developers simply find it too difficult to learn. They prefer PHP, RoR, and Python because all three are easier to learn and use without understanding. There is an even easier language to learn :-D http://jbasic.sourceforge.net/ Damien B - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: JRuby sucked up the bath water but left the baby behind.
IMHO the foundation problem is class checking at compilation time. Many, many years ago I looked at .NET source and decided that it is was inferior to Java's compile time checking. (String parameter types can not be checked at compile time. .Net's CLR and the C++ library is full of them. Just no pointers do not make a language safe. This is why Java is an Enterprise Class Language while the rest are simple 'insecure hack toys'! Professional enterprise applications need professional tools and and NOT gold plated crap. Sorry but I have been known to be biased! -- George PS. 'Java Basic'! What an idiocy. I completely agree with Jim. I was hoping that 'age death' will ultimately improve the industry. Unfortunately it does not seem to be happening fast enough. May be total domination by Google will solve the problem. They translate into AJAX from Java Objects and retain the benefits of Java. I bet their 'Cloud' System and applications will be both secure and inherently reliable. I would love to see applications on the IPhone written in Google's Java AJAX! Please Steve, make your pocket computer a real 21st Century Product. I would like to write some 21st century 'Open Source' applications for it. PPS. Google's AJAX System is freely down loadable and will probably run over any Java Stack. PPPS. I would love to see a merged Sun, Apple and Google to save the American IT Industry. Date: Tue, 17 Jun 2008 00:42:24 -1000 From: [EMAIL PROTECTED] To: dev@tomcat.apache.org Subject: Re: JRuby sucked up the bath water but left the baby behind. You can not write enterprise-class, secure, web-centric software with PHP or RoR. The jury is still out on Python. To gain the benefits of Java you would need to turn the PHP language into - Java. So far, all projects that try to spit out bytecode via a non-Java language have failed. Writing enterprise-class software is difficult. There is no way around it. The idea of running PHP on Tomcat should be taken out back and executed Sopranos-style. - Jim - Original Message - From: Clifton Brooks [EMAIL PROTECTED] To: Dev Tomcat dev@tomcat.apache.org Sent: Tuesday, June 17, 2008 9:22 AM Subject: JRuby sucked up the bath water but left the baby behind. Instead of binding Ruby to Java as in JRuby, or Python to Java as in Java, we have to find a way to compile Ruby on Rails applications, .py files, and PHPs into java servlets. Although I adore programming in Java, most web developers simply find it too difficult to learn. They prefer PHP, RoR, and Python because all three are easier to learn and use without understanding. These languages don't scale as well and sacrifice run time efficiency for development time efficiency. The greatest advantages of servlets include: 1. The fact that they parse requests and generate responses through method calls instead of operating system processes or Fast CGI. 2. JNDI connectivity, particularly database connection pooling. 3. WORA and platform independence. (More a factor compared to .NET than the open source technologies.) Sadly, JRuby and Jython are just interpreters written in Java and they run more slowly than the original binary interpreters. If, instead of interpreting JRuby, PHP, and Jython, Tomcat, or some extensions for it, could compile programs in these languages into java servlets, then all of the advantages of the Java world will instantly become accessible to these popular languages. This suggestion is analogous to the .NET model which compiles any language into Windows only byte code. Here, any language compiles to platform independent, Java bytecode. I love Java as a language, and almost always prefer to develop in it, but maybe it's greatest virtues aren't syntax and grammar. Most web application developers prefer PHP for reasons similar to those which make RoR appealing. However, the technologies underneath these languages don't measure up to the JVM and Tomcat or other Servlet containers. This causes all sorts of scalability problems, and it slows down the entire internet. When and how can we grant Java infrastructure to PHP developers? When and how can we compile PHP, Ruby, Python, and other web application languages into Servlets? I dont know about the feasibility of this, some clever person can figure it out, but there is definitely a market for PHP in tomcat. The question comes up in the user groups. I imagine there are practical challenges to that and the half cocked Servlet solutions out there seem to be reinventing PHP in JNI, and doing a fairly bad job. I was wondering if an extension to the Apache runtime would not be a better way to go... APR + PHP_R kind of idea. And then just look for some cool but simple interop. Like a servlet can forward to PHP, and visa versa. ie you can just