It really annoys me that when I organize my code so nicely into reusable TCF methods, I have to be aware of the performance hit. I would really like to see it be that TCF would be a performance gain.
Robert.
On Wednesday, July 2, 2003, at 08:33 AM, Bill Conlon wrote:
I thought about this thread over night, and Sri's comments cover many of
my thoughts.
For commercial products, there is either write for and run on Microsoft,
or write once/run anywhere. Everyware/Tango was aimed at write once/run
anywhere. But the problem was the amount of effort required by the
developer to support this model. Java has been successful, partly
because of Sun's backing, but also because IBM got behind it. So it
seems to me that the path of least resistance is to use the Java model to
deliver the functionality of witango.
As Sri mentions, this continues to provide cross-platform deployment, and
the substantial performance benefits of complilation, but also leverages
the investment of over $1 billion into Java tools.
For With to be successful, it needs to focus on the benefits it can
deliver: rapid development, ease of deployment, flexibile integration.
I think that the path is definitely toward servlets. Maybe With will
become the Zend of Struts -- providing a comprehensive IDE and a Action
Controller to support the Jakarta Struts project. Zend seems to make
money at it.
Third-party and Internal Just in Time (JIT) compilers like Symantec,
compile Java Byte Codes to native Machine code after very sophisticated
compile-time optimizations. It is very difficults to manually run
through several layers of optimizations like Java JIT compilers do.
After an automatic first time compilation the result is preserved unless
the source changes. So the code is not interpreted from that point on.
Without proper optimization, all C/C++ code are not the same. There's
good and bad. There lies the power of scripting to avoid re-inventing
the wheel over and over again. Performance of good scripts in complex
tasks can be better than the work of inexperienced programmers working
with native compilers.
Having been raised with Vinyl 33 rpm records, I am certain that record
players sound better than CD and DAT tapes. But only when you drop a 100
thousand bucks. Until then a $30 pocket CD player, and even MP3 players
will know the socks off the retail record players. Same thing with
native code programming. Even now a lot of NetWare programming in done
with assembly code. The folks at Novell were so concerned ahout shaving
a few milliseconds that there support for C/C++ has been spotty and C++
has been unavailable until recently. Guess how many applications are
available on Netware?
Regarding C/C++ programming, some successful C++ products are converted
to C (but with top-notch and structured re-organization) to support a
wider range of OSes, since C++ availability is limited. Witango could
raise the performance bar as well as its coverage by converting the
Witango server engine to be natively Java based rather than statically
compiled code. Then we wouldn't have to worry about supporting RedHat 7
or Redhat 9, or libstdc++ version a.b.xx etc. Stability, memory leakage,
multiprocessor support and cross platform standardization woould cease
to be issues. Is that where Phil is going with teh Java compiler
eventually? Extensions are always available for those want exits to
support COM objects or compiled native programs. One good thing about
Java, it can go anywhere C does. It does not require C++ to be available
for providing its Object-Oriented capabilities. And then again, Witango
is lot easier to program than Java .
Sri Amudhanar
Maxys Corporation
Witango Reseller
Consulting and Training Services
703 729 0600
Scott Cadillac wrote:
Some good points Robert,
I hear what you're saying. Natively compiled code does run faster than
Just-in-time compile at the virtual machine layer.
But it does add several layers of complexity too. I'm not an expert at this
level by any means, but it seams to me that Witango isn't ready to support
this kind of low-level environment (nor any interpreted language for that
matter, e.g., ColdFusion).
For example, garbage collection and other memory allocation issues - what
sort of Metatags would we need for this?
I think this is why the Witango Java Compiler (or a .NET one for that
matter) has some attraction. The Virtual Machine layer (or .NET CLR) has
most of these low-level environment features built right in. You just need
to provide the functional parts of your code and the Machine layer (or CLR)
does the rest.
If I take a realist point of view here, I think a Java Compiler is a great
first step in this direction.
Providing your code is well written, Java will still execute faster than an
interpreted TAF or TCF - AND you now have code that is portable to other
non-Witango applications.
As you suggested, compiling a TCF is a very excellent starting point. Having
your TCF compiled as a JavaBean or a .NET Assembly (and with a COM-callable
wrapper, be accessible as COM) makes your code much more valuable.
I'm not a fan of Java by any stretch of the imagination, but I certainly see
the significance of this new work Phil has done.
Rome wasn't built in a day, eh :-)
Cheers......
Scott Cadillac, Witango.org - http://witango.org 403-281-6090 - [EMAIL PROTECTED] -- Information for the Witango Developer Community ---------------------
XML-Extranet - http://xml-extra.net 403-281-6090 - [EMAIL PROTECTED] -- Well-formed Development (for hire) ---------------------
-----Original Message----- From: Robert Garcia [mailto:[EMAIL PROTECTED] Sent: Tuesday, July 01, 2003 1:42 AM To: [EMAIL PROTECTED] Subject: Re: Witango-Talk: Boosting Server Performance, and TCFs
The JSP/J2EE model is an example of interpreted and compiled. But I think, Witango is in a unique place because it can seriously outperform JAVA with natively compiled code instead of running through a JAVA virtual machine. Witango is extremely easy to use, I think the next step is to leverage the server and gain performance, and easier portability of code.
Robert.
On Monday, June 30, 2003, at 10:06 PM, Scott Cadillac wrote:
language hasIt's a pretty exciting concept when you think about it. With the exception of classic ASP (now ASP.NET), I don't think any other web
Witango is inchingmade the transition from "interpreted" to "compiled", and
closer all the time.--
Robert Garcia President - BigHead Technology CTO - eventpix.com 2781 N Carlmont Pl Simi Valley, Ca 93065 ph: 805.522.8577 - cell: 805.501.1390 [EMAIL PROTECTED] - [EMAIL PROTECTED] http://bighead.net/ - http://eventpix.com/ - http://theradmac.com/
______________________________________________________________ __________ TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
_____________________________________________________________________ ___
TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
______________________________________________________________________ __
TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
Bill Conlon
To the Point 345 California Avenue Suite 2 Palo Alto, CA 94306
office: 650.327.2175 fax: 650.329.8335 mobile: 650.906.9929 e-mail: mailto:[EMAIL PROTECTED] web: http://www.tothept.com
_______________________________________________________________________ _
TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
--
Robert Garcia President - BigHead Technology CTO - eventpix.com 2781 N Carlmont Pl Simi Valley, Ca 93065 ph: 805.522.8577 - cell: 805.501.1390 [EMAIL PROTECTED] - [EMAIL PROTECTED] http://bighead.net/ - http://eventpix.com/ - http://theradmac.com/
________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/maillist.taf
