[#406419] Recursion with Hash — Love U Ruby <lists@...>

h = {a: {b: {c: 23}}}

14 messages 2013/04/01

[#406465] Exclusively for Rubyists, a community on Facebook — "senthil k." <lists@...>

I was surprised to know that there is no community for Ruby Programming

12 messages 2013/04/03
[#406467] Re: Exclusively for Rubyists, a community on Facebook — Marc Heiler <lists@...> 2013/04/04

Thing is, some people do not use Facebook and never will.

[#406528] Role of bundler in creating and installing a gem — Jon Cairns <lists@...>

Hi fellow rubyists,

11 messages 2013/04/05

[#406555] How do you know what the main file in Ruby Projects is? — peteV <pete0verse@...>

Hi Ruby people,

18 messages 2013/04/05
[#406558] Re: How do you know what the main file in Ruby Projects is? — "Carlo E. Prelz" <fluido@...> 2013/04/05

Subject: How do you know what the main file in Ruby Projects is?

[#406560] Re: How do you know what the main file in Ruby Projects is? — Hans Mackowiak <lists@...> 2013/04/05

Carlo E. Prelz wrote in post #1104616:

[#406562] Re: How do you know what the main file in Ruby Projects is? — "D. Deryl Downey" <me@...> 2013/04/05

Actually its not wrong. What it does is explicitly state which ruby

[#406563] Re: How do you know what the main file in Ruby Projects is? — Matt Lawrence <matt@...> 2013/04/05

On Sat, 6 Apr 2013, D. Deryl Downey wrote:

[#406564] Re: How do you know what the main file in Ruby Projects is? — Hans Mackowiak <lists@...> 2013/04/05

Matt Lawrence wrote in post #1104625:

[#406566] Re: How do you know what the main file in Ruby Projects is? — Matt Lawrence <matt@...> 2013/04/05

On Sat, 6 Apr 2013, Hans Mackowiak wrote:

[#406570] Re: How do you know what the main file in Ruby Projects is? — Matthew Mongeau <halogenandtoast@...> 2013/04/05

I'm interested in the issue with using env, but I find you explanation a but=

[#406600] Mapping string data ptr to buffer in ffi — se gm <lists@...>

I'm trying to implement some "shared memory" in Ruby, but I'm not sure

20 messages 2013/04/08

[#406683] confusion with Struct class — Love U Ruby <lists@...>

I went to there - http://www.ruby-doc.org/core-2.0/Struct.html but the

29 messages 2013/04/11
[#406694] Re: confusion with Struct class — Love U Ruby <lists@...> 2013/04/11

Why does every time the has value getting changed,while the instance

[#406762] Why does #content method in nokogiri not printing the full text? — Love U Ruby <lists@...>

Here is the documentation: http://www.rubydoc.info/gems/nokogiri/frames

19 messages 2013/04/14
[#406764] Re: Why does #content method in nokogiri not printing the full text? — tamouse mailing lists <tamouse.lists@...> 2013/04/14

On Sun, Apr 14, 2013 at 11:19 AM, Love U Ruby <lists@ruby-forum.com> wrote:

[#406874] Input: sentence Modify: words Output: modified sentence — Philip Parker <lists@...>

I am new to Ruby. This is a programming interview question to use any

11 messages 2013/04/19

[#406912] Tap method : good or bad practice ? — Sébastien Durand <lists@...>

Hi all !

18 messages 2013/04/21

[#406936] BEGINNER -CLASS QUERY — shaik farooq <lists@...>

HEY as we know that the object conatins the instance variables that are

22 messages 2013/04/22

[#406966] copying files syntax with FileUtils.rb (grr.) — Thomas Luedeke <lists@...>

In my Ruby scripting, there is probably no greater and chronic source of

10 messages 2013/04/23

[#406969] what is the $- magic global? — Matthew Kerwin <lists@...>

I've been searching for the past hour or so, including manually stepping

13 messages 2013/04/24

[#407059] New Rexx like data structure — Peter Hickman <peterhickman386@...>

This is just something that I have been playing with for some time but I

11 messages 2013/04/29

[#407070] writing lines to a file — peteV <pete0verse@...>

I have a text file with on every line a magic card number and such info

13 messages 2013/04/29

Re: Wondering why no "increment" or "decrement" operator in ruby

From: Rob Biedenharn <rob@...>
Date: 2013-04-15 14:01:50 UTC
List: ruby-talk #406803
On 2013-Apr-15, at 05:20 , Robert Klemme wrote:
> On Mon, Apr 15, 2013 at 5:38 AM, tamouse mailing lists =
<tamouse.lists@gmail.com> wrote:
> On Sun, Apr 14, 2013 at 10:23 PM, Matthew Kerwin =
<lists@ruby-forum.com> wrote:
> > Incidentally, if you're using MRI, because of a clever optimisation =
your
> > 'a' variable literally holds the value `1`, not a reference per se.
>=20
> I guess I don't understand this last part; I can still call an
> instance method on a, so it must be more than just a value..., no? As
> I can call an instance method on 1. I guess I don't quite get what you
> mean by 'value'...
>=20
> I prefer to look at this on the language level and not the MRI =
implementation (even though they are closely related).  On the language =
level the optimization is invisible and hence irrelevant for the =
reasoning here.  The reason for the absence of an increment operator is =
that there was a design decision to make numbers immutable (at least =
with regard to their numeric value).  If instances of a type are =
immutable their state will never change - hence you cannot change them =
from representing 1 to 2 etc.
>=20
> Having said that, "++a" could be made syntactic sugar for "a+=3D1" but =
that would not work if a was referencing a String even though String#+ =
is defined.  The only way out of this would be to make "++a" syntactic =
sugar for something like "a+=3Da.class.one" where Integer would =
implement "one" as "return 1".  But what would String.one return then?
>=20
> Kind regards
>=20
> robert
>=20
> --=20
> remember.guy do |as, often| as.you_can - without end
> http://blog.rubybestpractices.com/

Why wouldn't the syntactic sugar for ++a be a=3Da.succ (for "successor") =
since that is defined on more types? =46rom the PIckaxe:

So far we=92ve shown ranges of numbers and strings. However, as you=92d =
expect from an object- oriented language, Ruby can create ranges based =
on objects that you define. The only constraints are that the objects =
must respond to succ by returning the next object in sequence and the =
objects must be comparable using <=3D>.

-- Programming Ruby 1.9 & 2.0, p. 93, Ch.6 Standard Types=20


irb2.0.0> a =3D 1
#2.0.0 =3D> 1
irb2.0.0> a.succ
#2.0.0 =3D> 2
irb2.0.0> a =3D "hello"
#2.0.0 =3D> "hello"
irb2.0.0> a.succ
#2.0.0 =3D> "hellp"

For String, which does have mutable instances, there's also #succ! to =
change the object itself.

irb2.0.0> a
#2.0.0 =3D> "hello"
irb2.0.0> a =3D "hello"
#2.0.0 =3D> "hello"
irb2.0.0> a.succ
#2.0.0 =3D> "hellp"
irb2.0.0> a
#2.0.0 =3D> "hello"
irb2.0.0> a.succ!
#2.0.0 =3D> "hellp"
irb2.0.0> a
#2.0.0 =3D> "hellp"

for --a you could use a=3Da.pred (for "predecessor"), but that's only =
defined on Integer (and had no built-in use like #succ does).

irb2.0.0> a =3D 1=20
#2.0.0 =3D> 1
irb2.0.0> a.pred
#2.0.0 =3D> 0
irb2.0.0> a.pred
NoMethodError: undefined method `pred' for "hello":String
	from (irb):5
	from /Users/rab/.rbenv/versions/2.0.0-p0/bin/irb:12:in `<main>'


=46rom my Wayback Machine=99, about 25 years ago the company I worked =
for had an internally developed C compiler (yes, back in the stone age =
before C was even a standard language and gcc was that weird, free =
compiler) that actually did define ++ and -- for doubles (floating point =
numbers) as a+=3D1.0 and a-=3D1.0 for just this reason.

-Rob

In This Thread