(unknown)

Hello,

I am a ruby newbie, though I walk through the different Ruby sites, for a couple of weeks.

I am very interested in this languages, cause it seems at first sight that I could make easily some programming tasks.

That was at the beginning after having explored a bit of python, which is interesting, but ruby's syntax and OOP are clearer, but then I was searching for libraries such as twisted-python, I discovered that ruby is quite new, and doesn't a lot of work done as for python or perl.

Then i tried to install some bridge for python, but i failed to compile.

So i am now in the process of exploring if this language, though interesting, has a real future : ruby's father did some good job until now, but what next ? what about AOP ? what about industrial quality, giving ruby to community such as for groovy, that could be also a (good ?) alternative ?

Waiting for some good informations .

thanks

[snip]

what about AOP ?

Here is an AOP package for ruby
http://aspectr.sourceforge.net/

IIRC Ruby2 is going to have some AOP support.

what about industrial quality, giving ruby to community such as for groovy,
that could be also a (good ?) alternative ?

Can you elaborate.. I don't understand.

···

On 4/16/05, GUICHARD Pascal <pascal@guichard.org> wrote:

--
Simon Strandgaard

Hello Simon,

First, i would like to thank you to try to answer my questions.

The fact is that I am a little bit disappointed by the libraries, and the
evolution :

Some things/projects are conducted very well and fast, such as ruby on
rails, and I recognize a lot of other ones.

But on the hand, another lot of projects/libraries are present but somewhat
outdated at best, going even to deprecated/inoperatives such as the
ruby-python bridge, that IMO
Should be one of the most well maintained because of all work/llibraries
that it would make accessible, such the library I mentionned :
twisted-python, and also a lot of python work.

And last but not least, remember what the community said about the evolution
for the java language : the java language, though evolving through some king
of JCP, has been seen by the programmers community, because it was SUN's
property.

So compare the latter scheme for Java, with the present one for ruby that is
maintained and evolving by only one man, even though as much brilliant as
you want.

So my problematic would be to consider this language as mature enough for
corporate/entreprise dvpt or not, depending on the upper questions.

Thanks

P. Guichard

-----Message d'origine-----

···

De : Simon Strandgaard [mailto:neoneye@gmail.com]
Envoyé : samedi 16 avril 2005 21:12
À : ruby-talk ML
Objet : Re:

On 4/16/05, GUICHARD Pascal <pascal@guichard.org> wrote:
[snip]

what about AOP ?

Here is an AOP package for ruby
http://aspectr.sourceforge.net/

IIRC Ruby2 is going to have some AOP support.

what about industrial quality, giving ruby to community such as for

groovy,

that could be also a (good ?) alternative ?

Can you elaborate.. I don't understand.

--
Simon Strandgaard

[snip]

The fact is that I am a little bit disappointed by the libraries, and the
evolution : Some things/projects are conducted very well and fast,
such as ruby on rails, and I recognize a lot of other ones.

I have no experience with rails.

Some libs are well maintained, others are not. I am a terrible
maintainer myself.
There has been some talking about making a package system where
each package can be rated by the user. This could ease locating
updated and stabil
packages.

But on the hand, another lot of projects/libraries are present but somewhat
outdated at best, going even to deprecated/inoperatives such as the
ruby-python bridge, that IMO
Should be one of the most well maintained because of all work/llibraries
that it would make accessible, such the library I mentionned :
twisted-python, and also a lot of python work.

Sorry.. I have no idea what twisted python is.

···

On 4/16/05, Pascal GUICHARD <pascal@guichard.org> wrote:

--
Simon Strandgaard

The fact is that I am a little bit disappointed by the libraries, and the
evolution :

I find Ruby libraries to be of a generally high caliber. I agree that we're still short in a few areas, but that seems to be shrinking all the time.

I think the real issue here is finding the good libraries. The RAA isn't perfect for this yet and changes have been discussed here in the past.

Still I'm confused by what you hope to gain from a blanket statement like this? Do you want us to show you what libraries we consider essential? In what areas?

Remember that this is a largely open source community. Jump right in and help us fill in the holes!

But on the hand, another lot of projects/libraries are present but somewhat
outdated at best, going even to deprecated/inoperatives such as the
ruby-python bridge, that IMO
Should be one of the most well maintained because of all work/llibraries
that it would make accessible, such the library I mentionned :
twisted-python, and also a lot of python work.

No offense intended, but this seems silly to me. If you want to program in Python, go for Python. Firing up Ruby to bridge to a very similar language seems odd to me and I have no use for a library that helps me do that.

Perhaps what is really needed here is a Ruby port of Twisted. That makes a lot more sense to me. If that's really the goal here, let's create a solid Ruby solution, not hack together a strange Python bridge.

I'm not familiar with Twisted, but I just looked over the site a little. Is it a mainly a networking library? It seemed to include an event loop as well. Is it anything like Perl's POE? If I'm understanding any of this correctly, I can say that I personally would love to see a good Ruby framework like this. Start the project on Rubyforge and I might even sign on to help.

So compare the latter scheme for Java, with the present one for ruby that is
maintained and evolving by only one man, even though as much brilliant as
you want.

I really don't feel Ruby is evolving from one man. Matz may control the language, but that doesn't tell a fraction of the whole story. Look at some of the great libraries in Ruby's standard library that weren't created by Matz. What about projects like RubyGems, Rake, Builder, Redcloth, Needle, Rails... I could go on and on! What about Dave Thomas's work to bring Ruby to the masses? One man may have given us the canvas, and we're more than grateful for that, but I doubt he's even the lead painter.

James Edward Gray II

···

On Apr 16, 2005, at 4:52 PM, Pascal GUICHARD wrote:

Do find below the dscription of twisted-python.

Even if somewhat important for me, what disturbed me was not to find an
operative python-ruby bridge.

And to speak of AOP, aspectr is not (yet ?) at the level of an aspectj
framework, maybe will it be a ruby2 feature ? but who tells ruby's future ?

P. Guichard
About Twisted
Twisted is an asynchronous networking framework written in Python. It is
used by most of the servers, clients and protocols that are part of other
Twisted projects.
Twisted contains a number of modules:
* twisted.cred, a pluggable authentication system for servers;
* twisted.enterprise, an asynchonous adaptor of Python DB-API 2.0 database
interfaces;
* twisted.internet, the Twisted event loop;
* twisted.manhole, a debugging service;
* twisted.persisted, a collection of object persistance systems
* twisted.protocols, a collection of simple network protocols and helper
utilities;
* twisted.python, a set of Twisted programming abstractions;
* twisted.spread, a network transport, serializer and object broker;
* twisted.trial, a unit-testing framework; and

-----Message d'origine-----

···

De : Simon Strandgaard [mailto:neoneye@gmail.com]
Envoyé : dimanche 17 avril 2005 00:07
À : ruby-talk ML
Objet : Re:

On 4/16/05, Pascal GUICHARD <pascal@guichard.org> wrote:
[snip]

The fact is that I am a little bit disappointed by the libraries, and the
evolution : Some things/projects are conducted very well and fast,
such as ruby on rails, and I recognize a lot of other ones.

I have no experience with rails.

Some libs are well maintained, others are not. I am a terrible
maintainer myself.
There has been some talking about making a package system where
each package can be rated by the user. This could ease locating
updated and stabil
packages.

But on the hand, another lot of projects/libraries are present but

somewhat

outdated at best, going even to deprecated/inoperatives such as the
ruby-python bridge, that IMO
Should be one of the most well maintained because of all work/llibraries
that it would make accessible, such the library I mentionned :
twisted-python, and also a lot of python work.

Sorry.. I have no idea what twisted python is.

--
Simon Strandgaard

James,

I agree with you for almost your comments.

First, I wouldn't discuss here if I were not intested in ruby and somewhat
searching the right libs, andd maybe to go for some solutoins.
I find too that lot of libraries are of caliber as you say.

What is interesting me in twisted-python is that it is a networking
framework for almost any protocol, and also asynchronous communications =>
EAI, ESB sujects

But I know also that it a big amount of code / work done, so if not finding
a ruby equivalent, it could be interesting to profit of this work (and I
mean all work around other perl/python libraries) by using a bridge : for
me, it doesn't sound silly, but only a practical view of facts, it was and
it it is no offense also.

The fact is I didn't know of perl::POE, but at first sight seems in the same
vein as twited-python, and yes it would be interesting to have such a ruby
framework (I didn't find one)

And last, about ruby language itself, I didn't said that there are
good:great ruby projects, at the contrary.

But if you want to put it in the enterprise, it must have as real future,
and think what if the worse was to happen : matz, for one reason or another,
stops to work/evolve ruby ?

P. Guichard

-----Message d'origine-----

···

De : James Edward Gray II [mailto:james@grayproductions.net]
Envoye : dimanche 17 avril 2005 00:28
A : ruby-talk ML
Objet : Ruby Libraries (was Re: Re:)

On Apr 16, 2005, at 4:52 PM, Pascal GUICHARD wrote:

The fact is that I am a little bit disappointed by the libraries, and
the
evolution :

I find Ruby libraries to be of a generally high caliber. I agree that
we're still short in a few areas, but that seems to be shrinking all
the time.

I think the real issue here is finding the good libraries. The RAA
isn't perfect for this yet and changes have been discussed here in the
past.

Still I'm confused by what you hope to gain from a blanket statement
like this? Do you want us to show you what libraries we consider
essential? In what areas?

Remember that this is a largely open source community. Jump right in
and help us fill in the holes!

But on the hand, another lot of projects/libraries are present but
somewhat
outdated at best, going even to deprecated/inoperatives such as the
ruby-python bridge, that IMO
Should be one of the most well maintained because of all
work/llibraries
that it would make accessible, such the library I mentionned :
twisted-python, and also a lot of python work.

No offense intended, but this seems silly to me. If you want to
program in Python, go for Python. Firing up Ruby to bridge to a very
similar language seems odd to me and I have no use for a library that
helps me do that.

Perhaps what is really needed here is a Ruby port of Twisted. That
makes a lot more sense to me. If that's really the goal here, let's
create a solid Ruby solution, not hack together a strange Python
bridge.

I'm not familiar with Twisted, but I just looked over the site a
little. Is it a mainly a networking library? It seemed to include an
event loop as well. Is it anything like Perl's POE? If I'm
understanding any of this correctly, I can say that I personally would
love to see a good Ruby framework like this. Start the project on
Rubyforge and I might even sign on to help.

So compare the latter scheme for Java, with the present one for ruby
that is
maintained and evolving by only one man, even though as much brilliant
as
you want.

I really don't feel Ruby is evolving from one man. Matz may control
the language, but that doesn't tell a fraction of the whole story.
Look at some of the great libraries in Ruby's standard library that
weren't created by Matz. What about projects like RubyGems, Rake,
Builder, Redcloth, Needle, Rails... I could go on and on! What about
Dave Thomas's work to bring Ruby to the masses? One man may have given
us the canvas, and we're more than grateful for that, but I doubt he's
even the lead painter.

James Edward Gray II

As I understand it, Ruby doesn't need Twisted, as it has a strong
networking library built in. There is TCPServer, there is Webrick, and
there are other items, too.

I may look at what Twisted really offers and write something up that
shows what Ruby does that may duplicate Twisted.

-austin

Pascal GUICHARD ha scritto:

Do find below the dscription of twisted-python.

Even if somewhat important for me, what disturbed me was not to find an
operative python-ruby bridge.

If you feel the need for twisted, I think you should be using python, it is a nice language, imho.
If you feel the need for something specific provided by the twisted guys (such as imap/ssl support or the live console provided by manhole) you may find it in other ruby libraries (imap+ssl support is in the standard lib, manhole-like behaviour is in the breakpoint library on rubyforge)

And to speak of AOP, aspectr is not (yet ?) at the level of an aspectj
framework, maybe will it be a ruby2 feature ? but who tells ruby's future ?

matz. But again, I think if you feel the need for aspectj, than you'd better use it, IIRC in this days they should be also unifying it with AspectWerkz and this should result in something better than a preprocessor.

PS
Please excuse me if I sound rude, it is not my intention

As I understand it, Ruby doesn't need Twisted, as it has a strong
networking library built in. There is TCPServer, there is Webrick, and
there are other items, too.

This isn't the same, in my opinion.

The Socket/Server classes are very low level. GServer is more of a high-level approach but assumes Ruby's non-native threads are all you need for server IO and that's really only true in simple applications. Remember, a large write is all it takes to halt the entire Ruby process.

Also remember that POE/Twisted include event loop implementations. That can be quite handy.

I personally would love to see the Ruby equivalent of POE/Twisted. Might push us into the server world a bit more...

I may look at what Twisted really offers and write something up that
shows what Ruby does that may duplicate Twisted.

I would love to see you're opinion of why it isn't needed, as long as we can debate it a little. :slight_smile:

James Edward Gray II

···

On Apr 16, 2005, at 7:19 PM, Austin Ziegler wrote:

The Socket/Server classes are very low level. GServer is more of a
high-level approach but assumes Ruby's non-native threads are all you
need for server IO and that's really only true in simple applications.
Remember, a large write is all it takes to halt the entire Ruby
process.

Just wanted to add that if you do roll your own,
sock.fcntl(Fcntl::F_SETFL, Fcntl::O_NONBLOCK is available,
at least on the Unix platforms.

But indeed as has been discussed before, it'd be
***** OUTSTANDING ***** if ruby would just do
non-blocking I/O internally.

It seems even Windows sockets can be put into
non-blocking mode, via
ioctlsocket(sock, FIONBIO, ...)

I presume if it were utterly trivial for ruby to do
non-blocking I/O internally, it would have been done
long ago. I know too little about ruby's internals
to guess why it's (apparently) difficult. But it
would be very, very nice.

Regards,

Bill

···

From: "James Edward Gray II" <james@grayproductions.net>

As I understand it, Ruby doesn't need Twisted, as it has a strong
networking library built in. There is TCPServer, there is Webrick, and
there are other items, too.

This isn't the same, in my opinion.

The Socket/Server classes are very low level. GServer is more of a
high-level approach but assumes Ruby's non-native threads are all you
need for server IO and that's really only true in simple applications.
Remember, a large write is all it takes to halt the entire Ruby
process.

Also remember that POE/Twisted include event loop implementations.
That can be quite handy.

I personally would love to see the Ruby equivalent of POE/Twisted.
Might push us into the server world a bit more...

I may look at what Twisted really offers and write something up that
shows what Ruby does that may duplicate Twisted.

I would love to see you're opinion of why it isn't needed, as long as
we can debate it a little. :slight_smile:

My opinion on the matter is that Twisted is a horrendous
piece of convoluted, sick and strangely engineered work
(no experience with POE), and therefore not suitable for
duplication.

I have a wrapper library for libevent somewhere. Perhaps
I will dust it off if I can locate it.

James Edward Gray II

E

···

Le 17/4/2005, "James Edward Gray II" <james@grayproductions.net> a écrit:

On Apr 16, 2005, at 7:19 PM, Austin Ziegler wrote:

--
template<typename duck>
void quack(duck& d) { d.quack(); }