Ruby-dev summary 22273-22434

Hello,

Here is a ruby-dev summary in these days.

I would like to express my thanks to advisors
and commenters on our activity in this year.
I wish you good luck for the coming year.

Thanks,

[ruby-dev:22289] mswin32 optimize
Tietew posted a patch by which mswin32-ruby is successfully
built with the optimization option -Og. However, this patch
works only with VC 7.0 and VC 7.1.

[ruby-dev:22325] Array.dup.new
Akira Tanaka wrote that ‘Array.dup.new’ didn’t work with ruby-1.8
but it worked with ruby-1.6.
% ruby -ve ‘Array.dup.new’
ruby 1.8.1 (2003-12-22) [i686-linux]
-e:1:in `new’: allocator undefined for #Class:0x401be394
(NoMethodError)
from -e:1
This problem was fixed.

[ruby-dev:22329] [0x80000000].pack(“U”)
Akira Tanaka wrote that the following message ‘negative value’
was strange.
% ruby -e ‘[0x80000000].pack(“U”)’
-e:1:in pack': pack(U): negative value (ArgumentError) from -e:1 Nakada proposed an idea as follows. $ ./ruby -e '[0x80000000].pack("U")' -e:1:inpack’: pack(U): value out of range (ArgumentError)
from -e:1

[ruby-dev:22356] (OSX) TCPServer.open(hostname, 0)
Masatoshi Seki informed us that TCPServer.open(xxxx,0) didn’t
work on OSX, but TCPServer(0) and TCPServer(xxxx,)
worked fine. This problem was caused by strange behavior of
getaddrinfo(3).

[ruby-dev:22366] to_s': methodto_s’ overridden (TypeError)
Akira Tanaka asked why the following error was caused.
% ruby -e ‘
a = "a"
class << a; self; end.class_eval {
define_method(:to_s, a.method(:to_s))
}
a.to_s’
-e:6:in to_s': methodto_s’ overridden (TypeError)
from -e:6
Matz answered that he forgot why he had added an explicit
check. Nakada suggested that they had better do check in
define_method, and posted a patch to realize his suggestion.
Matz agreed with him but didn’t merge his patch because he
was not sure of behavior of the patch.

[ruby-dev:22367] sdbm: cannot insert after SPLTMAX attempts
Akira Tanaka asked if the following error was expected.
% rm ww.{dir,pag}; ruby -rsdbm -e ‘
d = SDBM.open(“ww”)
d["\373\221"] = “a” * 534
d["\371\367"] = “a” * 477
d.close’
sdbm: cannot insert after SPLTMAX attempts.
-e:4:in `[]=’: sdbm_store failed (SDBMError)
from -e:4
Matz answered that the error depended on sdbm.

[ruby-dev:22371] [Oniguruma] Version 2.0.0
Kosako informed us the release of Oniguruma 2.0.0. It is
available at ftp.ruby-lang.org.

[ruby-dev:22389] patches for i386-os2-emx
Norihide Shinagawa stood for a OS/2 maintainer and posted a
patch list for OS/2 with EMX.

When will Oniguruma be integrated with Ruby?

-austin

···

On Wed, 31 Dec 2003 00:45:11 +0900, Takaaki Tateishi wrote:

[ruby-dev:22371] [Oniguruma] Version 2.0.0 Kosako informed us the release
of Oniguruma 2.0.0. It is available at ftp.ruby-lang.org.


austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.12.30
* 11.47.17

Hi,

···

In message “Re: ruby-dev summary 22273-22434” on 03/12/31, Austin Ziegler austin@halostatue.ca writes:

On Wed, 31 Dec 2003 00:45:11 +0900, Takaaki Tateishi wrote:

[ruby-dev:22371] [Oniguruma] Version 2.0.0 Kosako informed us the release
of Oniguruma 2.0.0. It is available at ftp.ruby-lang.org.

When will Oniguruma be integrated with Ruby?

Soon to be with 1.9.

						matz.

“Yukihiro Matsumoto” matz@ruby-lang.org wrote in message

When will Oniguruma be integrated with Ruby?

Soon to be with 1.9.

matz.

Is there a document which describes what is new with Oniguruma ?
I have compiled the nightly snap-shot with Oniguruma 2.0 but I do not
know what to expect ? Any changes that I can try out ?

Thanks,
– shanko

What’s Oniguruma?

···

On Tue, Dec 30, 2003 at 10:43:38PM -0600, Shashank Date wrote:

Is there a document which describes what is new with Oniguruma ?
I have compiled the nightly snap-shot with Oniguruma 2.0 but I do not
know what to expect ? Any changes that I can try out ?

Is there a document which describes what is new with Oniguruma ?
I have compiled the nightly snap-shot with Oniguruma 2.0 but I do not
know what to expect ? Any changes that I can try out ?

The biggest difference is license. The current regex engine is under
the LGPL, whereas oniguruma is under our license only. In addition,
it supports some additional features such as look behind and named
subexpression capturing.

						matz.

“Mark J. Reed” markjreed@mail.com wrote in message
news:20031231045245.GA17817@mulan.thereeds.org

Is there a document which describes what is new with Oniguruma ?
I have compiled the nightly snap-shot with Oniguruma 2.0 but I do not
know what to expect ? Any changes that I can try out ?

I am currently looking at the documentation that came with it and may
be able to find out what the differences are.

What’s Oniguruma?

From the README which is included in the package:

Oniguruma is a regular expression library. The characteristics of this
library is that different character encoding for every regular expression
object can be specified.

Supported character encodings:

ASCII, ISO 8859-1, ISO 8859-15, UTF-8, EUC-JP, Shift_JIS, Big5

For me the big difference is that it carries the Ruby license and not the
GPL.

···

On Tue, Dec 30, 2003 at 10:43:38PM -0600, Shashank Date wrote:

“Yukihiro Matsumoto” matz@ruby-lang.org wrote in message

The biggest difference is license. The current regex engine is under
the LGPL, whereas oniguruma is under our license only.
^^^^^
Ah ! I thought it was GPL. Does not bother me either way, but from
what little I understand about licensing and stuff I think our (Ruby’s)
License is more liberal which is good :slight_smile:

In addition,
it supports some additional features such as look behind and named
subexpression capturing.

That is what I will like to try out. Also, like Guy advised in other post
I will “look at the regexp test in rubicon and try to understand some
results”.

Thanks Matz.

      And a Very Happy New Year to you all !!!

– shanko

In article bstlfp$1a1cm$1@ID-194283.news.uni-berlin.de,

“Mark J. Reed” markjreed@mail.com wrote in message
news:20031231045245.GA17817@mulan.thereeds.org

Is there a document which describes what is new with Oniguruma ?
I have compiled the nightly snap-shot with Oniguruma 2.0 but I do not
know what to expect ? Any changes that I can try out ?

I am currently looking at the documentation that came with it and may
be able to find out what the differences are.

What’s Oniguruma?

From the README which is included in the package:

Oniguruma is a regular expression library. The characteristics of this
library is that different character encoding for every regular expression
object can be specified.

Supported character encodings:

ASCII, ISO 8859-1, ISO 8859-15, UTF-8, EUC-JP, Shift_JIS, Big5

For me the big difference is that it carries the Ruby license and not the
GPL.

I guess I still don’t get the problem with the GPL in this case. Just
because Ruby uses a GPL’ed component doesn’t mean that your Ruby script
which you’re distributing suddenly becomes covered by the GPL.

…now embedding Ruby into another app might be a different story, but
even that seems unlikely. I’ve not embedded Ruby into another C/C++
app,but I suspect that if you did you would compile Ruby into some sort of
shared library (binary) and I really don’t think the GPL would effect the
rest of your code. (yes, you would have to make the Ruby source code
available, but what’s the big deal with that?)

Check out this article on Groklaw that came out a couple of weeks ago
about GPL misconceptions:

http://www.groklaw.net/article.php?story=20031214210634851

Beyond licensing issues (which are tenuous at best) and the character
set advantages, what does Oniguruma buy us? I guess I’m a little nervous
about replacing something as central as a regex engine at this point,
especially if the main reason is because of a misunderstanding of the GPL.

Phil

···

Shashank Date sdate@everestkc.net wrote:

On Tue, Dec 30, 2003 at 10:43:38PM -0600, Shashank Date wrote:

I guess I still don’t get the problem with the GPL in this case.
Just because Ruby uses a GPL’ed component doesn’t mean that your
Ruby script which you’re distributing suddenly becomes covered by
the GPL.

Scripts aren’t, but apps embedding Ruby would be.

…now embedding Ruby into another app might be a different
story, but even that seems unlikely. I’ve not embedded Ruby into
another C/C++ app,but I suspect that if you did you would compile
Ruby into some sort of shared library (binary) and I really don’t
think the GPL would effect the rest of your code. (yes, you would
have to make the Ruby source code available, but what’s the big
deal with that?)

Not necessarily. The GPL is viral – and this is a feature, not a
bug. Basically, if your code uses GPLed code (not LGPLed code), it
must be covered under the GPL. The FSF interprets this to cover any
sort of linkage, whether static or dynamic. The dynamic linking
claim is not fully supported, but there’s no clear ruling on this
under US law either way; other countries may make it more clear. I
believe that RMS has said that users of the Gimp should not use
non-GPLed PhotoShop 8BF filters and that PhotoShop users should not
use GPLed PhotoShop 8BF filters.

I think that the general consensus is that dynamic linking is
clearly a non-violation if there is more than one implementation of
a library, and at least one of them is non-GPLed or has an explicit
exemption.

I haven’t read the Groklaw analysis, but I have extensive archives
from the Mozilla licensing discussion several years ago, and my
understanding here is based on such discussion, which included input
by Eben Moglen.

As far as replacing the regex engine, I’d actually love to see some
of the proposals for Perl 6 Regexen implemented for Ruby 2.0 to
remove some of the places that are needlessly complex and confusing.

-austin

···

On Wed, 31 Dec 2003 16:21:48 +0900, Phil Tomson wrote:

austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.12.31
* 02.59.00

Beyond licensing issues (which are tenuous at best) and the character
set advantages, what does Oniguruma buy us?

A better regexp engine.

If you don't trust me on this, try to look at the regexp test in rubicon
and try to understand some results.

Guy Decoux

ptkwt@aracnet.com (Phil Tomson) writes:

…now embedding Ruby into another app might be a different story, but
even that seems unlikely. I’ve not embedded Ruby into another C/C++
app,but I suspect that if you did you would compile Ruby into some sort of
shared library (binary) and I really don’t think the GPL would effect the
rest of your code.

The FSF quite clearly believe it does.

http://www.fsf.org/licenses/gpl-faq.html#LinkingWithGPL
http://www.fsf.org/licenses/gpl-faq.html#MereAggregation
and
Frequently Asked Questions about the GNU Licenses - GNU Project - Free Software Foundation in general.

(yes, you would have to make the Ruby source code
available, but what’s the big deal with that?)

Presumably because it’d be more than that.

Oniguruma sounds neat, though. I’ll have to play with it some.

-=Eric

···


Come to think of it, there are already a million monkeys on a million
typewriters, and Usenet is NOTHING like Shakespeare.
– Blair Houghton.

[snip]

As far as replacing the regex engine, I’d actually love to see some
of the proposals for Perl 6 Regexen implemented for Ruby 2.0 to
remove some of the places that are needlessly complex and confusing.

I am working on a regexp engine written entirely in Ruby. My friend Mark
Sparshatt are working on a perl6 parser for it. When I am done
implementing a more efficient scanner routine, I will look into the perl6
parser also.

It will be able to support a wide range of inputs formats, because it
internally uses iterators.

http://raa.ruby-lang.org/list.rhtml?name=regexp

BTW: license=Ruby’s

···

On Wed, 31 Dec 2003 17:10:52 +0900, Austin Ziegler wrote:


Simon Strandgaard

Simon Strandgaard wrote:

···

On Wed, 31 Dec 2003 17:10:52 +0900, Austin Ziegler wrote:
[snip]

As far as replacing the regex engine, I’d actually love to see some
of the proposals for Perl 6 Regexen implemented for Ruby 2.0 to
remove some of the places that are needlessly complex and confusing.

I am working on a regexp engine written entirely in Ruby. My friend Mark
Sparshatt are working on a perl6 parser for it. When I am done
implementing a more efficient scanner routine, I will look into the perl6
parser also.

It will be able to support a wide range of inputs formats, because it
internally uses iterators.

http://raa.ruby-lang.org/list.rhtml?name=regexp

BTW: license=Ruby’s


Simon Strandgaard

Uhhh… does this mean that I can’t make a closed-source game that uses
Ruby for scripting? (I’m talking maybe 10 years from now, when I have
my own company.) The game engine would be a ruby extension, and the
‘normal’ ruby interpreter would run scripts that interface with it.
Would this therefore be illegal? Uh-ho…

Hi,

···

In message “Re: ruby-dev summary 22273-22434(GPL misconceptions)” on 04/01/01, Asfand Yar Qazi <im_not_giving_it_here@i_hate_spam.com> writes:

Uhhh… does this mean that I can’t make a closed-source game that uses
Ruby for scripting? (I’m talking maybe 10 years from now, when I have
my own company.) The game engine would be a ruby extension, and the
‘normal’ ruby interpreter would run scripts that interface with it.
Would this therefore be illegal? Uh-ho…

No and no. The current Ruby contains a component (regex engine) under
LGPL, which requires you to allow re-linking new version of the
component. Dynamic linking or providing compiled object files of your
program will do. It’s completely legal not to publish your own source
code linked with Ruby.

						matz.

No and no. The current Ruby contains a component (regex engine) under
LGPL, which requires you to allow re-linking new version of the
component. Dynamic linking or providing compiled object files of your
program will do. It’s completely legal not to publish your own source
code linked with Ruby.

Thanks

···