From: Ralph Mason Date: 2001-11-23T05:54:19+09:00 Subject: [ruby-talk:26176] More advanced Ruby - any english ? This is a multi-part message in MIME format. ------=_NextPart_000_07A6_01C17404.E42E3810 Content-Type: multipart/alternative; boundary="----=_NextPart_001_07A7_01C17404.E42E3810" ------=_NextPart_001_07A7_01C17404.E42E3810 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Is there any English written that describes the finer details of Ruby. = I find myself running into questions that happen due to missing some = fundamental holes in my understandings. Things like a Meta Classes methods are the methods it inherited from the = Class class and it's parent class, it's instance methods are are the = methods added in it's declaration. $_ is not a global variable Adding a method to Kernel sees different global variables than = Kernel.instance_eval All unscopped code runs in the scope of a global instance of Object. class << self can be used to create instance methods for a meta class. I know that some of this is incorrect, or misguided, or untrue so any = pointers greatly appriciated. I will compile a list of anything I find and put it on a web page = somewhere. Ralph ------=_NextPart_001_07A7_01C17404.E42E3810 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Is there any English written that = describes the=20 finer details of Ruby.  I find myself running into questions that = happen=20 due to missing some fundamental holes in my understandings.
 
Things like a Meta Classes methods are = the methods=20 it inherited from the Class class and it's parent class, it's instance = methods=20 are are the methods added in it's declaration.
 
$_ is not a global = variable
 
Adding a method to Kernel sees = different global=20 variables than Kernel.instance_eval
 
All unscopped code runs in the scope of = a global=20 instance of Object.
 
class << self can be used to = create instance=20 methods for a meta class.
 
I know that some of this is incorrect, = or=20 misguided, or untrue so any pointers = greatly=20 appriciated.
 
I will compile a list of anything I = find and put=20 it on a web page somewhere.
 
Ralph
 
------=_NextPart_001_07A7_01C17404.E42E3810-- ------=_NextPart_000_07A6_01C17404.E42E3810 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIII6jCCAogw ggHxoAMCAQICAwUraTANBgkqhkiG9w0BAQIFADCBkjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdl c3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUxHTAbBgNVBAsT FENlcnRpZmljYXRlIFNlcnZpY2VzMSgwJgYDVQQDEx9QZXJzb25hbCBGcmVlbWFpbCBSU0EgMjAw MC44LjMwMB4XDTAxMDcwOTIyMjQyMVoXDTAyMDcwOTIyMjQyMVowSTEfMB0GA1UEAxMWVGhhd3Rl IEZyZWVtYWlsIE1lbWJlcjEmMCQGCSqGSIb3DQEJARYXcmFscGgubWFzb25AdGVsb2dpcy5jb20w gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALu1srM8OOgNUMoigvNmihzsJXCfvY2n9hL65rKd O/CxPTI4KAVYUbzwydLkEVwJt/w1y/7jY4wKhsJ3Alfb8eYaNExtqx0jmPcrdmi9bIAvt9C0nV3H WgkBjflKo6yZ2e//XTjE6cCAWX90VaoQkE24xwTQHZk6JNoO8+VOg++dAgMBAAGjNDAyMCIGA1Ud EQQbMBmBF3JhbHBoLm1hc29uQHRlbG9naXMuY29tMAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEC BQADgYEACQ4AmyU5KZSJdDsVGOBIMdaPO9WFFbMbHIV/VoR39Lo2mZivetU5SN8bSvtGqR6sEtcf hFqS74953nqkoLTi94+lA8sczaDs8dBVdnAYBA0mqLDqOd9FDofF2L1RYwZueBJ6ej6U/WOphOud phIMy2yJfvhYEZBEDX7rqqQnM0EwggMpMIICkqADAgECAgEMMA0GCSqGSIb3DQEBBAUAMIHRMQsw CQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xGjAY BgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5nMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2Vz IERpdmlzaW9uMSQwIgYDVQQDExtUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgQ0ExKzApBgkqhkiG 9w0BCQEWHHBlcnNvbmFsLWZyZWVtYWlsQHRoYXd0ZS5jb20wHhcNMDAwODMwMDAwMDAwWhcNMDIw ODI5MjM1OTU5WjCBkjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UE BxMJQ2FwZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUxHTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZp Y2VzMSgwJgYDVQQDEx9QZXJzb25hbCBGcmVlbWFpbCBSU0EgMjAwMC44LjMwMIGfMA0GCSqGSIb3 DQEBAQUAA4GNADCBiQKBgQDeMzKmY8cJJUU+0m54J2eBxdqIGYKXDuNEKYpjNSptcDz63K737nRv MLwzkH/5NHGgo22Y8cNPomXbDfpL8dbdYaX5hc1VmjUanZJ1qCeu2HL5ugL217CR3hzpq+AYA6h8 Q0JQUYeDPPA5tJtUihOH/7ObnUlmAC0JieyUa+mhaQIDAQABo04wTDApBgNVHREEIjAgpB4wHDEa MBgGA1UEAxMRUHJpdmF0ZUxhYmVsMS0yOTcwEgYDVR0TAQH/BAgwBgEB/wIBADALBgNVHQ8EBAMC AQYwDQYJKoZIhvcNAQEEBQADgYEAcxtvJmWL/xU0S1liiu1EvknH6A27j7kNaiYqYoQfuIdjdBxt t88aU5FL4c3mONntUPQ6bDSSrOaSnG7BIwHCCafvS65y3QZn9VBvLli4tgvBUFe17BzX7xe21Yib t6KIGu05Wzl9NPy2lhglTWr0ncXDkS+plrgFPFL83eliA0gwggMtMIIClqADAgECAgEAMA0GCSqG SIb3DQEBBAUAMIHRMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYDVQQH EwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5nMSgwJgYDVQQLEx9DZXJ0aWZp Y2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSQwIgYDVQQDExtUaGF3dGUgUGVyc29uYWwgRnJlZW1h aWwgQ0ExKzApBgkqhkiG9w0BCQEWHHBlcnNvbmFsLWZyZWVtYWlsQHRoYXd0ZS5jb20wHhcNOTYw MTAxMDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCB0TELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rl cm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEo MCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3Rl IFBlcnNvbmFsIEZyZWVtYWlsIENBMSswKQYJKoZIhvcNAQkBFhxwZXJzb25hbC1mcmVlbWFpbEB0 aGF3dGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUadfUsJRkW3HpR9gMUbbqcpGw hF59LQ2PexLfhSV1KHQ6QixjJ5+Ve0vvfhmHHYbqo925zpZkGsIUbkSsfOaP6E0PcR9AOKYAo4d4 9vmUhl6t6sBeduvZFKNdbnp8DKVLVX8GGSl/npom1Wq7OCQIapjHsdqjmJH9edvlWsQcuQIDAQAB oxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBBAUAA4GBAMfskn5O+PWWpWdiKqTwTRFg 0G+NYFhhrCa7UjVcCM8w+6hKloofYkIjjBcP9LpknBesRynfnZhe0mxgcVyirNx54+duAEcftQ0o 6AKd5Jr9E/Sm2Xyx+NxfIyYJkYBz0BQb3kOpgyXy5pwvFcr+pquKB3WLDN1RhGvk+NHOd6KBMYIB /jCCAfoCAQEwgZowgZIxCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNV BAcTCUNhcGUgVG93bjEPMA0GA1UEChMGVGhhd3RlMR0wGwYDVQQLExRDZXJ0aWZpY2F0ZSBTZXJ2 aWNlczEoMCYGA1UEAxMfUGVyc29uYWwgRnJlZW1haWwgUlNBIDIwMDAuOC4zMAIDBStpMAkGBSsO AwIaBQCggbowGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDExMTIy MjA1NDQ5WjAjBgkqhkiG9w0BCQQxFgQUfpSSEBDacWyVrBV/nAVtlUQwLS8wWwYJKoZIhvcNAQkP MU4wTDAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcw DQYIKoZIhvcNAwICASgwBwYFKw4DAh0wDQYJKoZIhvcNAQEBBQAEgYCsciV3UsbLFqNBzMPEkBJp iKnLdBUd355VngsoBW3MeWot6Bf6xmRJVxMLMv47snkAtUfqgx3L/JCtJMbaxFOmTejnSj2JkENp fFn70XuVIVnWzBXoSUluQ+Ly93gq/e8UbgWyXhhR7bvqlEktwW4EvxIgtQFL5u8IObr1IbxS6QAA AAAAAA== ------=_NextPart_000_07A6_01C17404.E42E3810--