[#2332] Ruby-Python fusion? — mrilu <mrilu@...>
Usually I give some time for news to settle before I pass the word, but
7 messages
2000/04/01
[#2353] Re: Function of Array.filter surprises me — schneik@...
5 messages
2000/04/03
[#2361] crontab — Hugh Sasse Staff Elec Eng <hgs@...>
I want to have a program that may be run between certain times.
11 messages
2000/04/05
[#2375] Marshal: Want string out, but want depth specified? — Hugh Sasse Staff Elec Eng <hgs@...>
@encoded = [Marshal.dump(@decoded, , depth)].pack("m")
7 messages
2000/04/07
[#2378] Re: Marshal: Want string out, but want depth specified?
— matz@... (Yukihiro Matsumoto)
2000/04/07
Hi,
[#2376] Iterator into array — Dave Thomas <Dave@...>
15 messages
2000/04/07
[#2397] Could missing 'end' be reported better? — mrilu <mrilu@...>
I'm not sure one could easily parse, or moreover report, this error better.
5 messages
2000/04/08
[#2404] Re: Iterator into array — Andrew Hunt <andy@...>
>It's still possible to introduce a new syntax for collecting yielded
6 messages
2000/04/08
[#2412] Re: Could missing 'end' be reported better? — h.fulton@...
7 messages
2000/04/09
[#2414] Re: Could missing 'end' be reported better?
— matz@... (Yukihiro Matsumoto)
2000/04/09
Hi,
[#2429] Please join me, I'm Hashing documentation — mrilu <mrilu@...>
This is a story about my hashing ventures, try to bear with me.
5 messages
2000/04/10
[#2459] Precedence question — Dave Thomas <Dave@...>
7 messages
2000/04/12
[#2474] Ruby 1.4.4 — Yukihiro Matsumoto <matz@...>
Ruby 1.4.4 is out, check out:
5 messages
2000/04/14
[#2494] ANNOUNCE : PL/Ruby — ts <decoux@...>
7 messages
2000/04/17
[#2514] frozen behavior — Andrew Hunt <Andy@...>
7 messages
2000/04/19
[#2530] Re: 'in' vs. 'into' — Andrew Hunt <andy@...>
>Hmm, I've not decided yet. Here's the list of options:
6 messages
2000/04/20
[#2535] Default naming for iterator parameters — mrilu <mrilu@...>
I'm back at my computer after some traveling. I know I think Ruby
5 messages
2000/04/20
[#2598] different thread semantics 1.4.3 -> 1.4.4 — hipster <hipster@...4all.nl>
Hi fellow rubies,
4 messages
2000/04/28
[ruby-talk:02505] Variable scope -does this make sense?
From:
Dave Thomas <Dave@...>
Date:
2000-04-18 18:05:33 UTC
List:
ruby-talk #2505
I'm trying to define Ruby's various scoping rules as concisely as
possible for the language section of the book. I've come up with the
following somewhat dense prose.
My question: does it make sense (in the context of a terse reference
manual)? Is it accurate? Is there more to say?
Many thanks, folks
Dave
Global variables are available throughout an
application. Reference to an uninitialized global variable
returns nil.
Instance variables are available throughout a class
body. Reference to an uninitialized instance variable returns
nil.
Local variables are unique as their scopes are statically
determined, but their existence is established dynamically.
A local variable is created when it is first assigned to during
program execution.
The scope of a local variable is the immediately enclosing
method definition, class definition, module definition, or
program.
If a local variable is first assigned in an iterator block, then
it is local to the block. If a variable of the same name is
already established at the time the block executes, the block
will inherit that variable.
Method parameters and block parameters are considered to be local
variables, and are assigned to when the method or block is
invoked.
When a block is converted into an object of class \Ci{Proc}, it
takes on the set of local variables in existence at the time the
object is created. This forms part of the object's binding. Note
that although the binding of the variables is fixed at this
point, the procedure object will have access to the current
values of these variables when it executes. The binding ensures
that these variable will continue to exist even if the original
enclosing scope is destroyed.
\KW{while}, \KW{until}, and \KW{for} loops are built in to the
language and do not introduce new scope; previously existing
locals can be used in the loop, and any new locals created will
be available afterwards.