Scripting language (fwd)

Carl Youngblood wrote:

I bet that ethereal would come in handy for reverse engineering the
protocol. Just set it up to capture the network traffic, run a bunch
of queries on a machine that has the client installed and then dump
the traffic to a file for detailed analysis.

It is VERY handy. :wink: I used it a little bit yesterday to get an idea of how the TNS requests and responses were formatted.

The hard part (as I see it, being a newbie in this area) is decyphering the data portions of each packet. *sigh*

I need to stop responding to this thread... I've got too many projects already, and this is tempting me too much... :wink:

···

--
Jamis Buck
jgb3@email.byu.edu
http://www.jamisbuck.org/jamis

"I use octal until I get to 8, and then I switch to decimal."

About a month ago I have evaluated all three JVM scripting languages
mentioned so far (Jruby, Groovy, Jython) to use for unit testing of our
production Java code.

In the end, Jython looked like the only thing that could be considered
for serious work, and even that with caveats. Finally, I concluded to
stay with the plain old Java.

Groovy was very far from what I would consider "usable" at that time
(plenty of interesting bugs, 10 times slower than Jython, core language
syntax not stabilized).

Jruby looked better, but lagged two versions behind the parent language,
and therefore could not run many Ruby apps. E.g., try to build rake with
it.

So, my 2 cents worth of advice to any established Java shop would be: go
for Jython, or stay where you are (plain Java).

Best regards,
Alexey Verkhovsky

···

On Sat, 2004-07-17 at 06:27, Ron Stephens wrote:

I'd suggest taking a look at jython.

what do you mean by 'lagged two versions' ?
The latest versione should be nearly 1.8 compliant, IIRC

···

il Sat, 17 Jul 2004 22:17:29 +0900, Alexey Verkhovsky <alex@verk.info> ha scritto::

Jruby looked better, but lagged two versions behind the parent language,
and therefore could not run many Ruby apps. E.g., try to build rake with
it.

I'd suggest taking a look at jython.

About a month ago I have evaluated all three JVM scripting languages
mentioned so far (Jruby, Groovy, Jython) to use for unit testing of our
production Java code.

If you want to script your JVM I would HIGHLY recommend JudoScript:

Its very stable and I think would meet your needs.

-rich

···

On 7/17/04 9:17 AM, "Alexey Verkhovsky" <alex@verk.info> wrote:

On Sat, 2004-07-17 at 06:27, Ron Stephens wrote:

In the end, Jython looked like the only thing that could be considered
for serious work, and even that with caveats. Finally, I concluded to
stay with the plain old Java.

Groovy was very far from what I would consider "usable" at that time
(plenty of interesting bugs, 10 times slower than Jython, core language
syntax not stabilized).

Jruby looked better, but lagged two versions behind the parent language,
and therefore could not run many Ruby apps. E.g., try to build rake with
it.

So, my 2 cents worth of advice to any established Java shop would be: go
for Jython, or stay where you are (plain Java).

Best regards,
Alexey Verkhovsky

Alexey Verkhovsky <alex@verk.info> wrote in message news:<1089984325.6514.26.camel@localhost.localdomain>...

···

On Sat, 2004-07-17 at 06:27, Ron Stephens wrote:
> I'd suggest taking a look at jython.

About a month ago I have evaluated all three JVM scripting languages
mentioned so far (Jruby, Groovy, Jython) to use for unit testing of our
production Java code.

Another option would be SISC, a scheme interpeter for the JVM,
(http://sisc.sourceforge.net/\). AFAIK it is pretty mature.

--
G.

>
>Jruby looked better, but lagged two versions behind the parent language,
>and therefore could not run many Ruby apps. E.g., try to build rake with
>it.

what do you mean by 'lagged two versions' ?
The latest versione should be nearly 1.8 compliant, IIRC

OK, what about below shell session (I use CVS HEAD Ruby at home, but
iirc it was same with 1.8.1)?

[alex@dhcp-89-2 rake]$ alias jruby
alias jruby='$HOME/RUBY/jruby/bin/jruby.sh
-I/usr/local/lib/ruby/site_ruby/1.9'
[alex@dhcp-89-2 rake]$ jruby /usr/local/bin/rake
/usr/local/bin/rake:3:in 'require': Undefined local variable or method
'clean' for main:Object (NoMethodError)
        from /usr/local/bin/rake:3:in 'require'
        from /usr/local/bin/rake:3
[alex@dhcp-89-2 rake]$ ruby /usr/local/bin/rake
(in /home/alex/RUBY/eclipse/workspace/rake)
mkdir -p testdata
ruby -Ilib -e0 \
-rtest/testclean \
-rtest/testfilelist \
-rtest/testfileutils \
-rtest/testftp \
-rtest/testpackagetask \
-rtest/testtasks
Loaded suite -e
Started
...................................................................
Finished in 4.012639 seconds.

67 tests, 179 assertions, 0 failures, 0 errors

One other thing that I didn't like about Jruby 0.7 was startup time:

[alex@dhcp-89-2 rake]$ time ruby -e 'puts "worked"'
worked

real 0m0.107s
user 0m0.000s
sys 0m0.010s
[alex@dhcp-89-2 rake]$ time jruby -e 'puts "worked"'
worked

real 0m3.692s
user 0m2.310s
sys 0m0.130s

Before you blame it on JVM:

[alex@dhcp-89-2 java-wrapper]$ time java -cp . ArgsRepeater "worked"
worked

real 0m0.980s
user 0m0.430s
sys 0m0.020s

This is on P-III 700 Mhz. Jython, if I remember correctly, was 1.4 sec
or something like that. Groovy was over 6 seconds. For unit tests
anything bigger than 2 sec feels awkward.

Best regards,
Alex

···

On Sat, 2004-07-17 at 16:57, gabriele renzi wrote:

il Sat, 17 Jul 2004 22:17:29 +0900, Alexey Verkhovsky <alex@verk.info> > ha scritto::

        from :0

doh! Maybe this is the part not included in "nearly 1.8" :slight_smile:
Actually I don't understand what is happening, maybe it is
method_missing not working?
Did you tried reporting this to the jruby authors?

Anyway, I just asked you what 'two versions' meant, cause I had the
impression you were thinking 1.7 was a stable ruby release (so, 1.8 -
1.6 = 2) where it was just a development branch.

···

il Sun, 18 Jul 2004 00:20:44 +0900, Alexey Verkhovsky <alex@verk.info> ha scritto::

what do you mean by 'lagged two versions' ?
The latest versione should be nearly 1.8 compliant, IIRC

OK, what about below shell session (I use CVS HEAD Ruby at home, but
iirc it was same with 1.8.1)?

doh! Maybe this is the part not included in "nearly 1.8" :slight_smile:

All abstractions leak, of course. When you code for money, it's all
about productivity gained and lost. But dealing with a visibly leaking
programming language when you have contracts, deadlines, etc was a very
painful experience in past, so I try to avoid it.

Having said that, I have tremendous respect for the people who are
building Jruby. It's just that they have an unfinished product that has
to meet very high expectations.

I had the impression you were thinking 1.7 was a stable ruby release

Yes, my mistake.

Brgds,
Alex