perl_vs_java_efficiency

This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.



Subject: Perl vs Java
From: dreamwvr <dreamwvr@dreamwvr.com>
Date: Sun, 11 Jun 2000 09:37:14 -0600

hi,
   this could be a can of worms but anyhow here goes. Has anyone timed the
actual efficiency of Perl vs Java? Reason being is i wrote a state engine as 
a perl module that seemed quite fast ~ 0.33 to 0.54 of a second for slurping 
up values. With recall being about .25 to .35 of a second which seemed quit fast
to me. Then i was shown a jsp page which i really don't know much about..
reminded me actually of SSI syntax wise. Well it was doing the same thing using 
Java persistance objects and seemed very fast. Any idea how the languages
compare as always trying to use the best tool for the job. 
					TIA
					dreamwvr@dreamwvr.com
===

Subject: Re: Perl vs Java
From: Matt Sergeant <matt@sergeant.org>
Date: Sun, 11 Jun 2000 16:26:30 +0100 (BST)

On Sun, 11 Jun 2000, dreamwvr wrote:

> hi,
>    this could be a can of worms but anyhow here goes. Has anyone timed the
> actual efficiency of Perl vs Java? Reason being is i wrote a state engine as 
> a perl module that seemed quite fast ~ 0.33 to 0.54 of a second for slurping 
> up values. With recall being about .25 to .35 of a second which seemed quit fast
> to me. Then i was shown a jsp page which i really don't know much about..
> reminded me actually of SSI syntax wise. Well it was doing the same thing using 
> Java persistance objects and seemed very fast. Any idea how the languages
> compare as always trying to use the best tool for the job. 

There are posts in the archive about this. Here's a quick summary:

You can make Java slow. You can make mod_perl slow.
Java (servlets, jsp, etc) can use a lot of memory. mod_perl can use a lot
of memory.
Servlets can be very fast. mod_perl can be very fast.

I think that covers most of the arguments.

===

Subject: Re: Perl vs Java
From: dreamwvr <dreamwvr@dreamwvr.com>
Date: Sun, 11 Jun 2000 11:12:17 -0600

hi,
   thanks.. well i walked into that one;-)) anyways really was trying to see
which was better from a web serving point of view.. in maintaining state 
between cgi pages.. since i have not done any real java proggies since 
the first year of jdk coming out i really was surprised how fast it was since
my previous experience had been that java was very slow. yeah..yeah
the args about scripting vs compiled to go on forever but just wanted to 
see which offered the best efficiency according to tests that had been 
made using basically the same i/o . TIA

===

Subject: Re: Perl vs Java
From: Gerd Knops <gerti@bitart.com>
Date: Sun, 11 Jun 2000 16:45:11 -0500

dreamwvr wrote:
> hi,
> this could be a can of worms but anyhow here goes. Has anyone timed
> the actual efficiency of Perl vs Java?
>
> [cut]
>
I found this of some interest:

	Computer Languages compared
	http://wwwipd.ira.uka.de/%7Eprechelt/documents/jccpp_tr.pdf

===

Subject: Re: Perl vs Java
From: dreamwvr <dreamwvr@dreamwvr.com>
Date: Sun, 11 Jun 2000 17:36:09 -0600

hi Gerd,
           that was very much what i was looking for! hmm.. seems that perl is
definately one of the most mem efficient langs whereas java is not. cool and 
definately great reading although "talk about detail!" this is good! Java has
become acceptable for a compiled language. now here is a question i really 
am trying to understand. i really see java's greatest virtue of write once use
anywhere being less sensational once perl becomes fully compiled lang.
Well it will take some reading but definately is fascinating reading.
                                                              Thanks!
                                                             
===


Subject: Re: Perl vs Java [Now OT]
From: Gerd Knops <gerti@bitart.com>
Date: Sun, 11 Jun 2000 18:39:13 -0500

dreamwvr wrote:
> hi Gerd,
> that was very much what i was looking for! hmm.. seems that perl is
> definately one of the most mem efficient langs whereas java is not.
> cool and definately great reading although "talk about detail!" this
> is good! Java has become acceptable for a compiled language. now here
> is a question i really am trying to understand. i really see java's
> greatest virtue of write once use anywhere being less sensational
> once perl becomes fully compiled lang. Well it will take some reading
> but definately is fascinating reading. Thanks!
>
[OT]
My personal take:
Where (at least for me) Java has it's niche is client side, for  
applets and applications. But for this, 'write once use anywhere' just  
isn't true. Look at Java1.3 (which you really want to use for  
GUI-intensive stuff, though their event/keyboard handling is really not  
well thought out): Available on Windows. Period. In a year it *might*  
be out for Linux, and in maybe 1.5 years for FreeBSD (native). Mac?  
Probably not (other than OSX).

Server side it looks better, you don't need the GUI and so Java 1.1x  
is fine, and fairly available. But you can still write most things way  
faster in perl than in Java. And in my experience 'time to market' is  
way more importatnt than a program that 'looks cleaner' or maybe runs  
faster with less memory consumption. And it seems that speed/memory  
wise Java doesn't do any better than perl.

One advantage Java might have over Perl is that in a team environment  
Java is easier to maintain. It is not that easy to goof up in Java as  
badd as you can in perl, and there is just 'less language' to confuse  
your fellow developer with. But again this comes with a development  
speed penalty.

===

Subject: Re: Perl vs Java [Now OT]
From: Gunther Birznieks <gunther@extropia.com>
Date: Sun, 11 Jun 2000 20:16:34 -0400

At 06:39 PM 6/11/00 -0500, Gerd Knops wrote:
>dreamwvr wrote:
> > hi Gerd,
> > that was very much what i was looking for! hmm.. seems that perl is
> > definately one of the most mem efficient langs whereas java is not.
> > cool and definately great reading although "talk about detail!" this
> > is good! Java has become acceptable for a compiled language. now here
> > is a question i really am trying to understand. i really see java's
> > greatest virtue of write once use anywhere being less sensational
> > once perl becomes fully compiled lang. Well it will take some reading
> > but definately is fascinating reading. Thanks!
> >
>[OT]
>My personal take:
>Where (at least for me) Java has it's niche is client side, for
>applets and applications. But for this, 'write once use anywhere' just
>isn't true. Look at Java1.3 (which you really want to use for
>GUI-intensive stuff, though their event/keyboard handling is really not
>well thought out): Available on Windows. Period. In a year it *might*
>be out for Linux, and in maybe 1.5 years for FreeBSD (native). Mac?
>Probably not (other than OSX).

Yeah. Although applets can be useful for doing certain tricks such as 
providing real time pricing feeds to a web based trading engine using 
persistent HTTP streams.

>Server side it looks better, you don't need the GUI and so Java 1.1x
>is fine, and fairly available. But you can still write most things way
>faster in perl than in Java. And in my experience 'time to market' is
>way more importatnt than a program that 'looks cleaner' or maybe runs
>faster with less memory consumption. And it seems that speed/memory
>wise Java doesn't do any better than perl.

I would disagree about speed/memory wise that Java does not do any better 
than Perl. I think algorithmically this is true, but there are some 
practicalities that would be REALLY interesting to benchmark.

Here are a couple of things I would EXPECT would be much faster in Java 
than Perl if you benchmarked a program that made use of the following features:

1. Session management. Because servlets are multi-threaded they have easy, 
quick access to a shared memory pool. All the locking and shared 
persistence code used in Apache::Session is rendered moot by the shared 
memory Java model.

2. Would you write a chat engine in Perl? I wouldn't! (Well, actually I did 
5 years ago but I am certainly not proud of that code).

The thing about a real-time chat engine is the same issue as #1, it is 
really inefficient resource-wise to flush messages to a persistent data 
store or even using IPC shared memory in Perl in order to allow all the 
Perl processes to share a common list of chat messages even if only for the 
last 5 minutes worth of chat.

Furthermore, if your chat engine supports an applet trick to keep an HTTP 
stream open consistently pulling messages out of the stream, then launching 
a separate Perl interpreter for each HTTP stream carries a lot of overhead 
that simply having another thread off to the side does not have.

BTW, I would recommend the highest versions of JDK (stable) for server side 
java, as the higher JDKs do tend to be faster and tend to have more recent 
versions of libraries built for them (eg XML coding).

>One advantage Java might have over Perl is that in a team environment
>Java is easier to maintain. It is not that easy to goof up in Java as
>badd as you can in perl, and there is just 'less language' to confuse
>your fellow developer with. But again this comes with a development
>speed penalty.

I would agree with this. It does take longer to develop stuff in Java.

The other thing is portability. In Perl, I can test everything I do on a 
$10 a month ISP and yet scale it to a mod_perl server later. Can't do that 
with Java servlets. Try finding a $10 a month ISP that supports servlets...

Perl has a greater open source community because economic and technical 
boundaries do not exist for Perl that do exist for Java when writing web 
applications.

===

Subject: Re: Perl vs Java [Now OT]
From: Perrin Harkins <perrin@primenet.com>
Date: Sun, 11 Jun 2000 18:01:57 -0700 (PDT)

On Sun, 11 Jun 2000, Gunther Birznieks wrote:
> 1. Session management. Because servlets are multi-threaded they have easy, 
> quick access to a shared memory pool. All the locking and shared 
> persistence code used in Apache::Session is rendered moot by the shared 
> memory Java model.

Unless you use a cluster of servers for load balancing and high
availability, in which case you're right back where you started and you
need the Java equivalent of Apache::Session::DBI.  I imagine someone has
written one in one of the many servlet runners out there.

- Perrin

===

Subject: Re: Perl vs Java [Now OT]
From: dreamwvr <dreamwvr@dreamwvr.com>
Date: Sun, 11 Jun 2000 20:24:14 -0600

Perrin wrote:

> Unless you use a cluster of servers for load balancing and high
> availability, in which case you're right back where you started and you
> need the Java equivalent of Apache::Session::DBI.  I imagine someone has
> written one in one of the many servlet runners out there.


   this has been great! although my thoughts were that
DB_File is way faster than anything there is in java as a
state engine.. but then again i could be wrong.. been there
done that!

===

Subject: Re: Perl vs Java
From: shane@isupportlive.com
Date: Sun, 11 Jun 2000 23:55:28 +0000

On Sun, Jun 11, 2000 at 09:37:14AM -0600, dreamwvr wrote:

>    this could be a can of worms but anyhow here goes. Has
> anyone timed the actual efficiency of Perl vs Java? Reason
> being is i wrote a state engine as a perl module that
> seemed quite fast ~ 0.33 to 0.54 of a second for slurping
> up values. With recall being about .25 to .35 of a second
> which seemed quit fast to me. Then i was shown a jsp page
> which i really don't know much about..  reminded me
> actually of SSI syntax wise. Well it was doing the same
> thing using Java persistance objects and seemed very
> fast. Any idea how the languages compare as always trying
> to use the best tool for the job.

Well, I'll just drop my $.02 into this discussion.  I've done a lot of
both.  The site from which this email is coming from
(isupportlive.com) is developed in java technology start to finish.
Everything is either a .jsp, or straight servlet.  I've also developed
a lot of other sites using modperl, and cgi's.  (Cgi's a few years
ago, but everything for the last couple years has been modperl)  Also
for the isupportlive site there are java applications, and java
applets that use the servlets as their inter-communication method.

So given that information, I'll give you the run down on how I feel
about it.  After spending 6 months developing all that stuff, I think
it would have been wise to have the entire backend done in C or perl
instead.  I've done bench marks on both, and Java is a huge memory
hog, and not too much in the way of stable.  Speed wise, a perl
solution would have been better, but really for what I was doing C is
the only way to go, or maybe threaded perl when modperl2 comes out.

There's a lot of cool stuff "built in" to servlet technology that's
not immediatly obvious in perl technology.  But with stuff like
Embperl, Apache::ASP, and Mason, it sort of levels the playing field.
The worst thing about Java though for me is that the community isn't
as "giving".  The perl community is built on a very open tradition,
and the language itself is more extendable with native plugins.  (I.e.
you can build something in C in XS, and have it run non interpretted)

So the MOST important thing about perl is, well..., basically you
guys!, the perl community.  Java doesn't have that.  Native languages
have it, but not as organized as CPAN, etc.  Java doesn't have it...
not at all.  People are not nearly as open with their class files as
people are with their .pm's.

Honestly though..., I love the java language.  But the best thing
about java has nothing to do with Servlets.  It has everything to do
with the GUI class layout.  The inheritence there is pure beauty.
Have you every tried to use String tokens in java and run a benchmark
on it and compared it to a regex?  PATHETIC.  String handling is crap
in Java.  The explanations I've heard are overhead for creating string
objects for each token seperator.

Oh well, those are my disorganized thoughts :-)

===

Subject: Re: Perl vs Java [Now OT]
> From: shane@isupportlive.com
> Date: Mon, 12 Jun 2000 00:09:07 +0000
> 
WAY OT at this point :)
> [OT]
> My personal take:
> Where (at least for me) Java has it's niche is client side, for  
> applets and applications. But for this, 'write once use anywhere' just  
> isn't true. Look at Java1.3 (which you really want to use for  
> GUI-intensive stuff, though their event/keyboard handling is really not  
> well thought out): Available on Windows. Period. In a year it *might*  
> be out for Linux, and in maybe 1.5 years for FreeBSD (native). Mac?  
> Probably not (other than OSX).

This is true, I haven't looked at 1.3's event handling, but honestly
what would you prefer?  A single event loop?  Come on.., the 1.1+
event strategy was 100x better than 1.0.2.  1.0's event handling was
crap, and that's what most event loops are designed like.  This was
one area where I felt java technology was really far ahead.
(ActionListeners are key)

> Server side it looks better, you don't need the GUI and so Java 1.1x  
> is fine, and fairly available. But you can still write most things way  
> faster in perl than in Java. And in my experience 'time to market' is  
> way more importatnt than a program that 'looks cleaner' or maybe runs  
> faster with less memory consumption. And it seems that speed/memory  
> wise Java doesn't do any better than perl.

Hmm., well..., here's my gripe with this.  Server side perl is a
really fast developement tool.  GUI side java is a really fast
developement tool.  Why would you take a language that was clearly
designed for GUI developement, that all it's strengths lie with GUI,
and try to make it a server language?..., it's preposterous.  It
doesn't even have REGEX's natively..., what the hell is that!?!?!
(Note: there is a really good regex library that's mostly free for
java, not nearly as fast as perl native)

> One advantage Java might have over Perl is that in a team environment  
> Java is easier to maintain. It is not that easy to goof up in Java as  
> badd as you can in perl, and there is just 'less language' to confuse  
> your fellow developer with. But again this comes with a development  
> speed penalty.

Hehe, the funny thing is that Java is actually a huge language.  I
mean HUGE.  But 95% of it is GUI.  So if the language designers are
put 95% into the GUI... well, that speaks volumes to me.  String
handling sucks, and GUI handling is good.  If String handling isn't
good..., was it designed for pushing strings to webbrowsers?

Java is pretty easy to maintain, but proper perl modules are also easy
to maintain.  But what I see in the field is people not spending a lot
of time to make good modules.  Instead they're pushing projects out
fast, which is easy to do.  Perl doesn't put any restrictions on the
developer, they are free to do things however they like.  So you can
have beautiful class/module hierarchies in Perl, and you can have a
bunch of flat files that are impossible to make any mods to.  In Java
everything MUST be a class.  So it forces you to design things
right.  But the underlying problem is what's right for one thing isn't
right for others.  So Perl becomes sort of a "tool for any job", Java
becomes a tool only for a long term project.  (Overhead to start)

===

Subject: Re: Perl vs Java [Now OT]
> From: Gunther Birznieks <gunther@extropia.com>
> Date: Mon, 12 Jun 2000 21:35:22 +0800
> 
At 06:01 PM 6/11/00 -0700, Perrin Harkins wrote:
>On Sun, 11 Jun 2000, Gunther Birznieks wrote:
> > 1. Session management. Because servlets are multi-threaded they have easy,
> > quick access to a shared memory pool. All the locking and shared
> > persistence code used in Apache::Session is rendered moot by the shared
> > memory Java model.
>
>Unless you use a cluster of servers for load balancing and high
>availability, in which case you're right back where you started and you
>need the Java equivalent of Apache::Session::DBI.  I imagine someone has
>written one in one of the many servlet runners out there.
>
>- Perrin

1) Many load balancers actually recognize this and do provide some load 
balancing on IP address. This is definately not perfect of course (when you 
have ISP proxies like AOL)... and then when a machine goes down, it's just 
tough luck that the user has to get redirected and relogin or do whatever 
for the session.

2) On the flip side of that, Java has commercial products that handle this 
type of shared persistence -- one that comes to mind is Gemstone. Even so, 
there are a lot of things about Java that make creating a session 
persistence engine "easier".

For example, you could easily have a middleware java session persistence 
engine which is actually keeping all of the stuff in RAM, but then running 
a low-level thread to write stuff out to a database as it changes. Plus 
keeping a socket open to each servlet engine that it wants to let know a 
change in the real session made.

It's very very difficult to do the same type of architectures in Perl that 
you can do with Java precisely because Perl is not a multi-threaded 
language and never will be as robust in that area -- even if Perl becomes 
robust in this area, the modules will have to be written to support this as 
well.

Anyway, all languages have their advantages and disadvantages, but in cases 
such as session handling, Java Servlets wins out big time.

Apache::Session is awesome for Perl, But take a look at all the hoops that 
Jeffrey has to go through to maintain it and the code inside. It's a tough 
piece of code because it is a matter of sharing a persistent session data 
amongst a whole bunch of processes that don't know anything about anyone else.

And even then.

Programmers of Apache::Session still have to remember to do stuff like 
manually set a timestamp or flush out the session data to disk if a 
reference to a reference in a swizzled data structure is changed becuase 
there is no way for the TIE interface to recognize it. These complexities 
are simply non-issues in Java Servlets because of the in-memory aspect.

Anyway, I am not saying it is bad, Apache::Session is great! But it's 
definately hampered by Perl's architecture.

===

Subject: Re: perl vs java
> From: Roger Espel Llima <espel@iagora.net>
> Date: Mon, 12 Jun 2000 19:23:03 +0200
> 
Gunther Birznieks <gunther@extropia.com> wrote:
> 2. Would you write a chat engine in Perl? I wouldn't! (Well, actually I did 
> 5 years ago but I am certainly not proud of that code).

I did, just a few months ago, and it's working very nicely.

> The thing about a real-time chat engine is the same issue as #1, it is 
> really inefficient resource-wise to flush messages to a persistent data 
> store or even using IPC shared memory in Perl in order to allow all the 
> Perl processes to share a common list of chat messages even if only for the 
> last 5 minutes worth of chat.

So don't do it like that :)  My chat engine is a single-threaded,
select()-based plain Perl daemon (no apache there) that takes http
connections on a non-standard port, directly from the browser, and keeps
them open for as long as the browser will.  It speaks http on one end,
and uses the irc-server-to-server protocol to talk to an ircd on the
other.

Technically, yeah, select() is arguably ugly, but if you wrap it around
OO classes for the various kinds of buffers and connections, it's all
quite manageable.

Chat connections are very low bandwith, and a single-threaded design
tends to be memory effective, so I'd expect this setup to handle a few
hundred simultaneous users easily.  If you want more, use a standard irc
daemon as a hub, and connect several such perl servers to it; if you
want to have a java applet client too, it can talk directly to the irc
server.

===

Subject: Re: Perl vs Java [Now OT]
> From: Perrin Harkins <perrin@primenet.com>
> Date: Mon, 12 Jun 2000 15:28:42 -0700 (PDT)
> 
On Mon, 12 Jun 2000, Gunther Birznieks wrote:
> >Unless you use a cluster of servers for load balancing and high
> >availability, in which case you're right back where you started and you
> >need the Java equivalent of Apache::Session::DBI.  I imagine someone has
> >written one in one of the many servlet runners out there.
> 
> 1) Many load balancers actually recognize this and do provide some load 
> balancing on IP address. This is definately not perfect of course (when you 
> have ISP proxies like AOL)... and then when a machine goes down, it's just 
> tough luck that the user has to get redirected and relogin or do whatever 
> for the session.

It's that second part that is a problem for me.  We do a write-through
cache to deal with this, i.e. we write all data to both a local cache
(shared memory, courtesy of BerkeleyDB 3) and a shared database.  Reads
check the cache first, and don't bother to go to the database unless what
they want isn't cached.  If a machine fails, we only lose the cache.

I know some of the commercial java stuff does the same thing and provides
a nice API for using it.

Threading certainly does have its allure, and I agree that Apache::Session
is neat and that Perl's TIE mechanism is inadequate for the job.

===

Subject: Re: perl vs java
> From: Shane Nay <shane@isupportlive.com>
> Date: Mon, 12 Jun 2000 18:21:05 +0000
> 
Somehow I missed Gunther's message, maybe I had a system out for a little
while, I'm replying to Roger, but really replying to Gunther)

 On Mon, 12 Jun 2000, you wrote:
> Gunther Birznieks <gunther@extropia.com> wrote:
> > 2. Would you write a chat engine in Perl? I wouldn't! (Well, actually I did 
> > 5 years ago but I am certainly not proud of that code).

Hmm..., yes I would.  At this point, long before I would write it in Java.  You
know why?  Not because of anything in perl necessarily, but actually what you
can do with perl.  You see, a perl XS module can take advantage of anything
inside of C.  If I were to write a new version of the chat engine I wrote, I
wouldn't do it this way.  In fact I started re-writing it based on a sigqueues,
and CORBA.  Corba pre-fetch of everything running around, dump into memory,
sigqueues pick up request from client via httpd protocol (obviously not port
80, this is a special purpose HTTPD engine).  Stream out based on pre-fetched
CORBA content.  I started writing it, but got distracted by the fact that I ran
out of money :-), happens to the best of us.

Java can talk to Corba natively, so the application side talks to the corba
server, and dumps/retrieves it's messages into there.  Two threads involved in
the special purpose httpd engine.  One that fetches content from the CORBA
engine, the other that streams out to clients based on sigqueus (Similar to
phhttpd, but much simpler).  The locking issues on the Corba content is so
yucky I don't even want to discuss it (That's sort of where I left off).  I ran
some benchmarks, and the httpd engine could handle over 1000 requests per
second per server.  The corba fetch was really trivial, so the only "problem"
was the communication between the applications and omniORB (Corba Object
Request Broker, really good piece of software BTW, best ORB out there in terms
of speed)

> 
> I did, just a few months ago, and it's working very nicely.
> 
> > The thing about a real-time chat engine is the same issue as #1, it is 
> > really inefficient resource-wise to flush messages to a persistent data 
> > store or even using IPC shared memory in Perl in order to allow all the 
> > Perl processes to share a common list of chat messages even if only for the 
> > last 5 minutes worth of chat.
> 
> So don't do it like that :)  My chat engine is a single-threaded,
> select()-based plain Perl daemon (no apache there) that takes http
> connections on a non-standard port, directly from the browser, and keeps
> them open for as long as the browser will.  It speaks http on one end,
> and uses the irc-server-to-server protocol to talk to an ircd on the
> other.

Well, yes that's the easiest way to do it with perl.  The other way is to write
some XS modules which plug into an sigqueue engine, and handle it that way. 
Honestly though, if you're going to be writing XS modules to talk to signal
queues, you might as well write the damn thing in c :-).

> Technically, yeah, select() is arguably ugly, but if you wrap it around
> OO classes for the various kinds of buffers and connections, it's all
> quite manageable.

Select might be ugly, but it's how nearly every realtime system works.  So if
you want a realtime system you need to look into select, poll (ugh), and
sigqueues.

> Chat connections are very low bandwith, and a single-threaded design
> tends to be memory effective, so I'd expect this setup to handle a few
> hundred simultaneous users easily.  If you want more, use a standard irc
> daemon as a hub, and connect several such perl servers to it; if you
> want to have a java applet client too, it can talk directly to the irc
> server.

Nothing could be more true.  Single thread is the ONLY way to go..., anything
other than that is a massive waste of trying to implement.

Thanks,
Shane.

===

Subject: Re: perl vs java
> From: Gunther Birznieks <gunther@extropia.com>
> Date: Tue, 13 Jun 2000 11:41:29 +0800
> 
Now, now...that is unfair. I was referring to writing in pure Perl vs pure 
Java.

Of course, C apis and pre-written daemon integration makes the glue 
language a moot point (and favors Perl actually).

BTW, is select() is still broken in Win32 Perl? It was 6 months ago (I 
suspect because IO operates differently on win32) so you'd limit your 
platform too.

===

Subject: Re: perl vs java
> From: Perrin Harkins <perrin@primenet.com>
> Date: Mon, 12 Jun 2000 21:40:26 -0700 (PDT)
> 
On Mon, 12 Jun 2000, Shane Nay wrote:
> If I were to write a new version of the chat engine I wrote, I
> wouldn't do it this way.  In fact I started re-writing it based on a
> sigqueues, and CORBA.

Shane, you are a maniac!  You wrote a chat server using sigqueues and
CORBA?  Isn't that like killing a mosquito with an atomic bomb?

===

Subject: Re: perl vs java
> From: Shane Nay <shane@isupportlive.com>
> Date: Tue, 13 Jun 2000 01:05:27 +0000
> 
On Tue, 13 Jun 2000, you wrote:
> Now, now...that is unfair. I was referring to writing in pure Perl vs pure 
> Java.

Admittedly it's not completely fair :-).  I admitted that I would do (have
done) it in c.  Given a choice between C and perl that is.  But as you say in
the next paragraph, Perl is clearly a better choice than java on this. 
(Although if you're only supporting JDK1.1x and later, the ability to pass java
objects over HTTP is really cool, and I used it extensively)

> 
> Of course, C apis and pre-written daemon integration makes the glue 
> language a moot point (and favors Perl actually).
> 
> BTW, is select() is still broken in Win32 Perl? It was 6 months ago (I 
> suspect because IO operates differently on win32) so you'd limit your 
> platform too.

Honestly I don't know much about the Win32 platform.  Until I had to use VMWare
to look at a prototype for a product I was helping out with I hadn't used
Windows in about 2 years. (BTW: Huge plug for VMWare, that's some
REALLY cool software, not just for runing windows on linux, but testing other
OSes... I can't say enough good stuff about vmware)

===

Subject: Re: perl vs java
> From: Roger Espel Llima <espel@iagora.net>
> Date: Tue, 13 Jun 2000 17:49:45 +0200
> 
Now, now...that is unfair. I was referring to writing in pure Perl vs pure 
> Java.
> 
> Of course, C apis and pre-written daemon integration makes the glue 
> language a moot point (and favors Perl actually).

Well, mine is pure perl.  it can speak the protocol to integrate with a
pre-written C irc daemon, but you don't *have* to use it with one.

> BTW, is select() is still broken in Win32 Perl? It was 6 months ago (I 
> suspect because IO operates differently on win32) so you'd limit your 
> platform too.

Last I heard, perl's select() under win32 worked for sockets, but not
for pipes or ttys.  Anyway, limiting myself to platforms where select()
works doesn't strike me as a bad thing...

===





the rest of The Pile (a partial mailing list archive)

doom@kzsu.stanford.edu