[#40602] [ruby-trunk - Bug #5532][Open] Compile problem for bigdecimal on cygwin — Martin Dürst <duerst@...>
[#40646] [ruby-trunk - Bug #5541][Open] Better configure error message when llvm-gcc is the default compiler — Eric Hodel <[email protected]>
[#40647] [ruby-trunk - Bug #5542][Open] Ruby 1.9.3-p0 changed arity on default initialization method — Joshua Ballanco <jballanc@...>
[#40648] [ruby-trunk - Feature #5543][Open] rb_thread_blocking_region() API is poorly designed — Christopher Huff <cjameshuff@...>
[#40662] Relevant methods not appearing in RDoc — Andrew Grimm <andrew.j.grimm@...>
The method Module.private_constant isn't appearing in
On Nov 1, 2011, at 3:45 PM, Andrew Grimm wrote:
On Wed, Nov 2, 2011 at 9:55 AM, Eric Hodel <[email protected]> wrote:
[#40684] [ruby-trunk - Feature #5555][Open] rename #include? to #includes? — Alexey Muranov <muranov@...>
> The basic naming for methods in standard class libraries are:
On Tue, Apr 24, 2012 at 15:47, Roger Pack <[email protected]> wrote:
>> It always confuses me how that one defies the rule.
[#40688] [ruby-trunk - Bug #5556][Open] SIGHUP no longer ignored when sent to process group from a subprocess — Brian Ford <brixen@...>
[#40706] [ruby-trunk - Feature #5562][Open] Improvement of Windows IO performance — Hiroshi Shirosaki <h.shirosaki@...>
[#40737] [ruby-trunk - Bug #5570][Open] Encoding of environment variables on Windows — Nikolai Weibull <now@...>
Hello,
[#40748] Proposal for sustainable branch maintenance — "Yuki Sonoda (Yugui)" <yugui@...>
-----BEGIN PGP SIGNED MESSAGE-----
Why maintain 1.9.1 at all? I don't see the benefit. People need to
Hello,
[#40751] [ruby-trunk - Feature #5574][Open] Make arrays comparable — Arnau Sanchez <rbarnau@...>
[#40770] [ruby-trunk - Feature #5578][Open] Embedded YAML for Ruby 2.0 — Thomas Sawyer <transfire@...>
[#40806] [ruby-trunk - Feature #5583][Open] Optionally typing — Yasushi ANDO <andyjpn@...>
[#40824] [ruby-trunk - Feature #5588][Open] add negation flag (v) to Regexp — Suraj Kurapati <sunaku@...>
[#40840] A quiz: Re: Second patch attempt for PATH_MAX fix in ruby1.9.1- 1.9.3~rc1-3 — Svante Signell <svante.signell@...>
Hello,
[#40845] [Ruby 1.8 - Bug #5599][Open] YAML.load_documents — Thomas Sawyer <transfire@...>
[#40865] IO.copy_stream creates files with restrictive permissions — Eric Wong <normalperson@...>
I'm not sure if this is a bug or intended as spec.
2011/11/9 Eric Wong <[email protected]>:
>> I noticed when a file name argument is passed to the IO.copy_stream, the
On 20/11/2011, at 5:09 PM, KOSAKI Motohiro wrote:
2011/11/20 Clifford Heath <[email protected]>:
>> I think documentation is the wrong answer. The security defects are not caused
2011/11/22 KOSAKI Motohiro <[email protected]>:
On 22/11/2011, at 9:39 AM, Tanaka Akira wrote:
2011/11/22 Clifford Heath <[email protected]>:
>> The umask that almost every Unix distribution has always had in /etc/profile - which is 022.
[#40867] Question regarding Ruby 2.0 backwards compatibility — Martin Bo煬et <martin.bosslet@...>
If I recall it correctly, the goal for 2.0 was to stay API-compatible
[#40898] [ruby-trunk - Feature #5605][Open] [PATCH] net/http: use IO.copy_stream for requests using body_stream — Eric Wong <normalperson@...>
[#40908] [ruby-trunk - Feature #5607][Open] Inconsistent reaction in Range of String — Yen-Nan Lin <redmine@...>
[#40941] [ruby-trunk - Feature #5617][Open] Allow install RubyGems into dediceted directory — Vit Ondruch <v.ondruch@...>
[#40943] [ruby-trunk - Bug #5619][Open] Segfault on OS X — Otto Hilska <otto@...>
[#40951] [Backport93 - Backport #5621][Open] Please backport thread-safe autoloading patch — Mike Perham <mperham@...>
Unfortunately ruby-head has a deadlock in one of my go-to scenarios for
-----BEGIN PGP SIGNED MESSAGE-----
On Sat, Nov 12, 2011 at 7:24 PM, Hiroshi Nakamura <[email protected]> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
On Fri, Nov 18, 2011 at 12:15 AM, Hiroshi Nakamura <[email protected]> wro=
(2011/11/19 6:31), Charles Oliver Nutter wrote:
On Fri, Nov 18, 2011 at 5:24 PM, Hiroshi Nakamura <[email protected]> wrot=
(2011/11/19 9:08), Charles Oliver Nutter wrote:
-----BEGIN PGP SIGNED MESSAGE-----
[#40982] [ruby-trunk - Bug #5625][Open] Remove profanity and pejoratives — Andrew Grimm <andrew.j.grimm@...>
I was not aiming to protect children from the f-word. My intention was
[#41004] [ruby-trunk - Feature #5628][Open] Module#basename — Thomas Sawyer <transfire@...>
[#41024] [ruby-trunk - Feature #5632][Open] Attempt to open included class shades it instead. — Boris Stitnicky <boris@...>
[#41025] Proposal to add new methods: positive? negative? natural? — JosFrancisco Calvo Moreno <josefranciscocalvo@...>
Hi all!
On 11/15 12:58, Jos? Francisco Calvo Moreno wrote:
Hi Jeremy,
Hi Chuck,
2011/11/14 Jos=E9 Francisco Calvo Moreno <[email protected]>:
I don't have a deep understanding of ruby core base types but I want to
On IEEE 754 Floating Point Numbers, there are positive 0.0 and negative 0.0=
Do you suggest the following?
[#41038] [ruby-trunk - Bug #5634][Open] yield and binding — Thomas Sawyer <transfire@...>
[#41078] mkmf sets CFLAGS to contain flags that it shouldn't be setting — Nikolai Weibull <now@...>
Hi!
Hi,
On Thu, Nov 17, 2011 at 07:24, Nobuyoshi Nakada <[email protected]> wrote:
Hi,
On Thu, Nov 17, 2011 at 14:46, Nobuyoshi Nakada <[email protected]> wrote:
[#41079] Why doesn’t mkmf’s have_macro add a HAVE_X to $defs? — Nikolai Weibull <now@...>
Hi!
Hi,
[#41086] [ruby-trunk - Feature #5644][Open] add Enumerable#exclude? antonym — Suraj Kurapati <sunaku@...>
[#41114] [Backport93 - Backport #5646][Open] Backport r33775 — Aaron Patterson <aaron@...>
> Also, is there a script for doing backports? =A0It looks like the commit =
On Thu, Dec 01, 2011 at 02:19:31AM +0900, KOSAKI Motohiro wrote:
>> > Also, is there a script for doing backports? =A0It looks like the comm=
[#41116] Pathname['abc'] instead of Pathname('abc') global method as constructor alternative — "Alexander E. Fischer" <aef@...>
Hello,
[#41149] autoload will be dead — Yukihiro Matsumoto <matz@...>
Hi,
Does this also mean that we will not enhance const_missing to support
[#41160] [ruby-trunk - Bug #5650][Open] Add rb_enc_raise() to allow C extensions to raise errors with messages with correct encoding — Nikolai Weibull <now@...>
[#41161] conflict between 1.8.7 and 1.9.3 installations — Joel VanderWerf <joelvanderwerf@...>
Hi,
On 11/19/2011 04:55 PM, Nobuyoshi Nakada wrote:
[#41171] [ruby-trunk - Feature #5653] "I strongly discourage the use of autoload in any standard libraries" (Re: autoload will be dead) — Hiroshi Nakamura <nakahiro@...>
[#41175] [ruby-trunk - Feature #5654][Open] Introduce global lock to avoid concurrent require — Hiroshi Nakamura <nakahiro@...>
[#41186] [ruby-trunk - Bug #5657][Open] Constants in included modules aren't visible when defining classes with Class.new — Gary Bernhardt <gary.bernhardt@...>
[#41211] Availability of ruby/intern.h — Aaron Patterson <tenderlove@...>
Are functions accessible via ruby/intern.h considered to be "public"
[#41212] [ruby-trunk - Feature #5662][Open] inject-accumulate, or Haskell's mapAccum* — Edvard Majakari <edvard.majakari@...>
[#41213] [ruby-trunk - Bug #5663][Open] Combined map/select method — Yehuda Katz <wycats@...>
[#41256] [ruby-trunk - Feature #2567] Net::HTTP does not handle encoding correctly — Yui NARUSE <naruse@...>
[#41262] [ruby-trunk - Feature #5666][Open] Make rb_path2class public — Aaron Patterson <aaron@...>
[#41302] [ruby-trunk - Feature #5673][Open] undef_method probably doesn't need to raise an error — Thomas Sawyer <transfire@...>
[#41314] [ruby-trunk - Bug #5675][Open] [mingw] static build fails due to socket extension build failure — Jon Forums <redmine@...>
> compiling ../../../ext/socket/socket.c
On Sun, Nov 27, 2011 at 4:11 AM, KOSAKI Motohiro
2011/11/27 Luis Lavena <[email protected]>:
[#41321] [Proposal] C API arrangement — Yugui <yugui@...>
Hi, mame-san
[#41336] Wrong encoding of Symbol — Andriy Tyurnikov <andriy.tyurnikov@...>
By default Symbols are encoded as US-ASCII,=20
Hi,
Hi,
Matz wrote :
[#41338] [ruby-trunk - Feature #5677][Open] IO C API — Martin Bosslet <Martin.Bosslet@...>
[#41340] [ruby-trunk - Feature #5678][Open] StringIO#to_str — Martin Bosslet <Martin.Bosslet@...>
[#41351] [ruby-trunk - Bug #5679][Open] Too many arguments for format warnings on mingw32 build — Heesob Park <phasis@...>
> I can see the following warnings during mingw32 build.
[#41370] [ruby-trunk - Bug #5681][Open] Conflcting types for rb_w32_inet_ntop caused by duplicate definition under MinGW — Luis Lavena <luislavena@...>
2011/11/28 Luis Lavena <[email protected]>:
[#41404] [ruby-trunk - Bug #5690][Open] Module#qualified_const_get — Yehuda Katz <wycats@...>
Hi,
[ruby-core:40775] [ruby-trunk - Feature #5534] Redefine Range class and introduce RelativeNumeric and RelativeRange
Issue #5534 has been updated by Alexey Muranov.
I was not precise, i meant not equality, but *identity* --- that there be only one empty range: Range::EMPTY_SET. Like this:
(2..1) # => Range::EMPTY_SET
This way it would be clear what a range is --- just an infinite set of a certain form, with methods to work with it.
I am in favor of reducing the number of internal attributes of class instances when possible and simplifying their definitions. In my opinion, this should help to understand what a program is doing, to avoid side effects, to write specifications (and hence to maintain existing behavior in future versions), and to settle more easily on desire behavior for new methods.
Mathematically, ranges (2..1) et (3..0) are equal --- both empty, but Ruby remembers their "bounds" and treats them differently.
If my proposed definition of Range is accepted, the questions like the one discussed in #4541 will simply not arise: since the ranges (4..1) and (3..1) will be identical, [1,2,3][3..1] and [1,2,3][4..1] will be giving identical results, whatever the result is.
I propose to view the "memory" of bounds of an empty range as an artifact of implementation of Range , which should not be used for operations like a[1..-2] .
My more general view point is the following: i think it will help to settle on some kind of standards for the language if reasonable relations between different methods are enforced. It is already done in cases where one method uses another, for example Comparable#> , Comparable#< , etc., use #<=> :
a < b if and only if (a <=> b) == -1
I think it would be helpful for understanding the language and coming up with some kind of standards or best practice guidelines if similar relations were imposed between methods that cannot be defined in terms of one another simply because of computer limitations (not being able to loop over infinitely many objects). For example, require in specifications that (unless overridden in a subclass) for two ranges x and y ,
x == y must be true if and only if x.include?(z) == y.include?(z) is true for every possible object z.
----------------------------------------
Feature #5534: Redefine Range class and introduce RelativeNumeric and RelativeRange
http://redmine.ruby-lang.org/issues/5534
Author: Alexey Muranov
Status: Open
Priority: Normal
Assignee:
Category: core
Target version:
I started by commenting on Feature #4541, but ended up with proposing a new feature myself.
I suggest to redefine the behavior of Range class so that all empty ranges be equal:
(2..1) == (1..-1) and (2..1) == (1...1) and (2..1) == ('z'..'a') # => true
In other fords, ranges `r1` and `r2` should be equal if and only if `r1.include?` and `r2.include?` give identical results for all inputs. (Why is it not `includes?` by the way?) Thus Range would simply be a way to store certain infinite sets.
This change will result in not being able to slice an array `a` from beginning and from the end simultaneously with `a[1..-2]`. To resolve this, i propose to introduce `RelativeNumeric` and `RelativeRange` classes.
Each `RelativeNumeric` would be a `Numeric` with an "anchor", which is an arbitrary symbol. For example:
3.from(:bottom) # would return a "relative" 3 with "anchor" :bottom
One can define shortcuts `#from_bottom` for `#from(:bottom)` and `#from_top` for `#from_top`.
A `RelativeRange` is a range with relative bounds. If bounds of a relative range r are relative to the same anchor and the range is seen to be empty, it should be equal to *the* empty relative range with this anchor. For example:
(3.from(:center)..2.from(:center)) == (0.from(:center)...0.from(:center)) # => true
Now, to do what is currently done by `a[1..-2]`, one can redefine `Array#slice` to use instead:
a[1.from_bottom..(-1).from_top]
What do you think?
--
http://redmine.ruby-lang.org