Hello Quinn,

I have never used python, but ....

From: Quinn Dunkan <quinn / envy.ugcs.caltech.edu>
Subject: [ruby-talk:01528] ruby <=> python
Date: Sun, 20 Feb 2000 11:49:01 -0800

> Characters are integers in ruby.
> 'hello'[0]  -> 104

no, there is only String class. all char is an instance of class
String.  And, [] is a method in class String to get _char code_.

ah... I noticed that ruby reference manual says:

>    self[nth]
>        Retrieves the nth character from a string.

this should be fixed.

> ---
> 
> Ruby has perl-esque control-statements-that-also-work-as-modifiers:
> 'foo' if 1      -> "foo"
> 'foo' if nil    -> nil

I think they are actually modifiers, not control statements.
check BNF.

> ---
> 
> Suppose you write "defined? foo".  defined?  has to evaluate its arguments,
> which makes me think it ought to throw a NameError if foo isn't defined'.  I'm
> confused.

if 'defined?' raise an exception, what's the point of having
'defined?'?

# I must be miss-understanding your question.

even in the toplevel, you are in an instance of class Object. so
'defined? foo' means defined? self.foo.  you can always check what
method an instance has with method 'methods'.

is there a way to get a list of variables that has been defined?

> ---
> 
> The only things that are false in ruby are nil, false, NIL, and FALSE:
> if 0 then 'hello' end   -> "hello"

this one came up on ruby-talk, Matz said "it's matter of how far you
define 'false'"

I just can't find in the archive....

regards,
--
          yashi