On Tue, Sep 2, 2008 at 3:09 PM, Yugui (Yuki Sonoda) <yugui / yugui.jp> wrote:
> Hi all,
>
> As announced before, Ruby 1.9.1 features will be frozen on 25 September.
>
> After the time,
>  * Ruby level APIs must not changed.

I was wondering about the syntax change from 1.8 to 1.9 regarding the
`[]` method

== The source
  class Dictionary
    def self.[](*args)
      args
    end
  end

  p Dictionary[1,2,3,]

== The results
=== For ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-linux]

  [1, 2, 3]


=== For ruby 1.9.0 (2008-09-12 revision 19298) [i686-linux]

  test.rb:7: syntax error, unexpected ']'

I'm not quite sure what the reason behind this change is, but it does
break some of my code between the two versions and it introduces a
syntactic differences between the syntax for array "[]" and "obj[]"
I would be glad if this could be clarified before set into stone.

Thanks in advance,
^ manveru

>  * C level APIs will must not changed without discussion on
> ruby-core/ruby-dev.
>   * All structures, data types, variables, functions and macros in
> include/ruby/*.h are regarded as public C level APIs.
>   * Move it from include/ruby/*.h anything you want not to publish.
>
> And I will create the ruby_1_9_1 branch and release 1.9.1 RC1 on 25
> October. After the time,
>  * C level APIs will must not changed.
>
> Also the C level APIs of 1.9.x must have backward binary-compatibility
> to 1.9.1.
>
>
> Regards,
>
> -- Yuki Sonoda (Yugui) <yugui / yugui.jp>