[#408634] How do I make lots of classes aware of each other? — "Andrew S." <lists@...>

I'm apparently missing something fundamental in my knowledge of classes

10 messages 2013/07/02

[#408712] Ruby web service with REST support — "Shubhada S." <lists@...>

Hi All,

17 messages 2013/07/05

[#408812] create variables depending on counter — stefan heinrich <lists@...>

Hi community,

21 messages 2013/07/09

[#408854] execute commands within SMTP email code: send content in variables and not actual variables — dJD col <lists@...>

I am trying to send an email using the code below. I am able to send the

9 messages 2013/07/10

[#409031] tap { break } idiom deserves its own Kernel method? — Andy Lowry <lists@...>

I use this idiom from time to time:

13 messages 2013/07/22

[#409072] Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...>

This is what I want to do.

19 messages 2013/07/23
[#409102] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/24

[#409103] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/25

tamouse m. wrote in post #1116598:

[#409122] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/26

[#409142] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/26

tamouse m. wrote in post #1116750:

[#409073] class <=> module — Bráulio Bhavamitra <lists@...>

Hello all,

17 messages 2013/07/23

[#409104] Ruby newbie question on Methods (NoMethoderror) — "Crispian A." <lists@...>

I have recently started learning ruby and so I am writing a small little

10 messages 2013/07/25

[#409170] Working through Ch.10 for learning to program 2.0 (Chris Pine) — JD JD <lists@...>

So, I have been working through this book, and have been doing ok up

33 messages 2013/07/28
[#409195] Re: Working through Ch.10 for learning to program 2.0 (Chris Pine) — Harry Kakueki <list.push@...> 2013/07/29

I tried this and came up with a one-liner that seems to do it. It sorts the

[#409258] WATIR - ScriptError popup on IE - Unable to get rid of! — Graeme Halls <lists@...>

I am new to Ruby & Watir, and I am having a nightmare with IE and Script

11 messages 2013/07/31

Re: A very half-baked idea: setting local variables

From: Robert Klemme <shortcutter@...>
Date: 2013-07-09 06:45:50 UTC
List: ruby-talk #408797
On Tue, Jul 9, 2013 at 1:14 AM, Matthew Kerwin <lists@ruby-forum.com> wrote:

> Hal Fulton wrote in post #1114777:
> >
> > Note that this wouldn't be a method call (like alias_method) but
> > a keyword (like alias) unless "binding of caller" was permitted...
> > which is another thing I've wanted but I suppose will never
> > happen.
> >
> > Comments, questions, projectiles?
>
> Yeah, I agree with Robert, there's no need to dynamically create local
> variables, just use a hash (dynamically created keys are fine).  And my
> initial gut response is: if you're writing that many variables on the
> left hand side of an assignment, with a single array on the right,
> there's probably something wrong with the architecture.
>

That situation frequently occurs when reading data e.g. from CSV files.  If
the file has that many columns it makes sense to have local variables for
them to ease handling.  OTOH then you probably use something like

CSV.foreach "a.csv" do |foo, bar, baz, alpha, beta|
  puts "foo is #{foo}"
end

Or one defines a Struct and puts values in there instead of having them in
an Array.

My other counter-proposal is: hit enter.  If the line is too long,
> develop a syntactic signature for the pattern.  For example:
>
>     foo, bar, baz, alpha, beta,
>         gamma, fred, bill, joey = *values
>
> (i.e. lining up the rightmost column, so it's clear that all wrapped
> lines lead to the single assignment operator).  Still not great, but at
> least the line isn't absurdly long, and you don't have to scan as far to
> see the '='
>

I like that approach.


> Finally, as a bike-shedding nit-pick: if it were a keyword, convention
> suggests there'd be no comma; and I think putting the destinations on
> the right is a bit confusing.  So if I had to choose, I'd go for:
>
>     assign %I[a b c] values
>
> But again, that's a big "if", and all in all I'm not too keen on the
> idea of dynamically creating local variables.


I forgot to mention: I do not see the original issue as such a big one, so
my general bias would be against going through some hoops just to avoid
lengthy left hand sides.  I don't have them that often and if I have it
does not bother me that much.

Kind regards

robert

-- 
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread