Prefixes _ and __ for object and class constants proposed

Discussion in 'Ruby' started by Xeno Campanoli, Jan 25, 2008.

  1. I may have brought this up before, a long time ago, but something I want
    is a prefix, like @ and @@, for constants that designates them as object
    or class constants respectively. That way I could make a lot of things
    constants that I am now just making variables and it would be obvious
    that they are constants only available for that context. I really don't
    like the underscore perfectly, but I've thought about it and it seems to
    be the best choice of available characters. Has anybody every thought
    about this (barring my possibly bringing it up two years ago), and does
    anyone else think this is a reasonable suggestion? If so, I would think
    it would be a small change that could be implemented in parallel with
    existing prefix syntax handling.

    Sincerely, Xeno Campanoli, Tacoma/Seattle programmer.
    --
    The only sustainable organizing methods focus not on scale,
    but on good design of the functional unit,
    not on winning battles, but on preservation.
     
    Xeno Campanoli, Jan 25, 2008
    #1
    1. Advertising

  2. Xeno Campanoli

    Dave Thomas Guest

    On Jan 25, 2008, at 1:24 PM, Xeno Campanoli wrote:

    > I may have brought this up before, a long time ago, but something I
    > want
    > is a prefix, like @ and @@, for constants that designates them as
    > object
    > or class constants respectively. That way I could make a lot of
    > things
    > constants that I am now just making variables and it would be obvious
    > that they are constants only available for that context. I really
    > don't
    > like the underscore perfectly, but I've thought about it and it
    > seems to
    > be the best choice of available characters. Has anybody every thought
    > about this (barring my possibly bringing it up two years ago), and
    > does
    > anyone else think this is a reasonable suggestion? If so, I would
    > think
    > it would be a small change that could be implemented in parallel with
    > existing prefix syntax handling.


    I'm not sure I've ever bumped into the need for an object constant,
    but if I had, I'd probably have simply implemented an instance method

    class Dave
    def initialize(new_pi)
    @pi = new_pi
    end
    def PI
    @pi
    end
    end

    d1 = Dave.new(3)
    d2 = Dave.new(3.14159)
    d3 = Dave.new(22.0/7.0)

    puts d1.PI, d2.PI, d3.PI


    Dave
     
    Dave Thomas, Jan 25, 2008
    #2
    1. Advertising

  3. Xeno Campanoli

    Eric Hodel Guest

    On Jan 25, 2008, at 11:24 AM, Xeno Campanoli wrote:

    > I may have brought this up before, a long time ago, but something I
    > want
    > is a prefix, like @ and @@, for constants that designates them as
    > object
    > or class constants respectively. That way I could make a lot of
    > things
    > constants that I am now just making variables and it would be obvious
    > that they are constants only available for that context. I really
    > don't
    > like the underscore perfectly, but I've thought about it and it
    > seems to
    > be the best choice of available characters. Has anybody every thought
    > about this (barring my possibly bringing it up two years ago), and
    > does
    > anyone else think this is a reasonable suggestion? If so, I would
    > think
    > it would be a small change that could be implemented in parallel with
    > existing prefix syntax handling.



    In ruby, constants are more like variables that yell at you.

    $ ruby
    X = 1
    X = 2
    p X
    ^D
    -:2: warning: already initialized constant X
    2
     
    Eric Hodel, Jan 25, 2008
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Raymond Hettinger
    Replies:
    8
    Views:
    313
    Daniel 'Dang' Griffith
    Apr 21, 2004
  2. W Karas
    Replies:
    1
    Views:
    239
    mlimber
    Aug 11, 2008
  3. Ioannis Vranos
    Replies:
    2
    Views:
    280
    Ioannis Vranos
    Mar 27, 2009
  4. Ioannis Vranos
    Replies:
    0
    Views:
    268
    Ioannis Vranos
    Mar 26, 2009
  5. Ioannis Vranos

    Using type prefixes with floating point constants

    Ioannis Vranos, Mar 26, 2009, in forum: C Programming
    Replies:
    4
    Views:
    322
    Keith Thompson
    Mar 27, 2009
Loading...

Share This Page