From: William Woodruff Date: 2015-03-28T15:53:50-04:00 Subject: [ruby-core:68670] Introductions and GSoC Proposal This is a multi-part message in MIME format. --------------070507000400030208060009 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Hello everybody! My name is William Woodruff. I'm a Google Summer of Code applicant, and I'm excited to work on the MRI. In particular, I'm very interested in implementing a type-switcher in the Ruby runtime, something that can dynamically change the representation of a program's data to better suit its characteristics. I'm also looking forward to adding new data structures to the runtime to make list and tree programming more efficient and native to MRI itself. For a more detailed list of ideas, I'm attaching my proposal (proposal.txt) as a potential timeline (timeline.txt) for review. If there are any developers who would be willing to mentor and advise me through this process, I would be extremely grateful for any information or advice they could give me. I'm very open to new ideas, suggestions, and criticisms so please send my way :). Thanks, William Woodruff (william@tuffbizz.com) --------------070507000400030208060009 Content-Type: text/plain; charset=UTF-8; name="proposal.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="proposal.txt" SGVsbG8sCgpNeSBuYW1lIGlzIFdpbGxpYW0gV29vZHJ1ZmYsIGFuZCBJJ20gYXBwbHlpbmcg dG8gd29yayBvbiB0aGUgTWF0eiBSdWJ5CkludGVycHJldGVyIGZvciBHb29nbGUncyAyMDE1 IFN1bW1lciBvZiBDb2RlLgoKTXkgZW1haWwgYWRkcmVzcyBpcyB3aWxsaWFtQHR1ZmZiaXp6 LmNvbSwKCmFuZCBteSBHaXRIdWIgaGFuZGxlIGlzIEB3b29kcnVmZncsIHdoaWNoIEkgcHVi bGlzaCBhbGwgb2YgbXkgb3Blbi1zb3VyY2UKcHJvamVjdHMgdW5kZXIuCgpZb3UgY2FuIGFs c28gZmluZCBhIGNvcHkgb2YgbXkgcmVzdW1lIGF0IGh0dHA6Ly93b29kcnVmZncudXMvcmVz dW1lLnBkZi4KCkknbSBhIGZyZXNobWFuIG1ham9yaW5nIGluIENvbXB1dGVyIFNjaWVuY2Ug YXQgdGhlIFVuaXZlcnNpdHkgb2YgTWFyeWxhbmQsCkNvbGxlZ2UgUGFyaywgY3VycmVudGx5 IHRha2luZyBjbGFzc2VzIGluIHN5c3RlbXMgcHJvZ3JhbW1pbmcuCgpJIHdvdWxkIGxpa2Ug dG8gdGFja2xlIHR3byBpZGVhcyBmb3IgdGhlIE1SSTogZHluYW1pY2FsbHkgc3dpdGNoaW5n IGRhdGEKc3RydWN0dXJlcyBmb3IgcGVyZm9ybWFuY2UgYW5kIGFkZGluZyBhZGRpdGlvbmFs IHN0cnVjdHVyZXMgYW5kIGltcGxlbWVudGF0aW9ucwp0byB0aGUgUnVieSBzdGFuZGFyZCBs aWJyYXJ5LiBJIGJlbGlldmUgdGhhdCBJIGhhdmUgdGhlIHNraWxscyB0byBhY2NvbXBsaXNo CmJvdGggb2YgdGhlc2UgZ29hbHMsIGhhdmluZyB0YWtlbiBhIGRhdGEgc3RydWN0dXJlcyBj b3Vyc2UgYW5kIGhhdmluZyBleHBlcmllbmNlCndpdGggYm90aCBSdWJ5IGFuZCBDLgoKRm9y IGEgc3RydWN0dXJlIHN3aXRjaGVyIGluc2lkZSB0aGUgTVJJLCBJIHdvdWxkIGxpa2UgdG8g ZG8gdGhlIGZvbGxvd2luZyB0aGluZ3M6CgogICAgLSBJbXBsZW1lbnQgdGhlIHN0cnVjdHVy ZSBzd2l0Y2hlciBpdHNlbGYuIFRoZSBzd2l0Y2hlciBjb3VsZCBlaXRoZXIgYWN0IGFzCiAg ICBhIGNvcmUgY29tcG9uZW50IG9mIHRoZSBNUkksIG9yIGFzIGEgcGFyZW50IG9mIGFsbCBk YXRhIHN0cnVjdHVyZXMgc3VpdGVkCiAgICBmb3IgYSBnaXZlbiB0YXNrLiBJbiB0aGUgbGF0 dGVyIGNhc2UsIHRoZSBvY2N1cnJlbmNlIG9mIGNvbmRpdGlvbnMgYW1lbmFibGUKICAgIHRv IGEgc3RydWN0dXJlIGNoYW5nZSB3b3VsZCBiZSBwcm9wYWdhdGVkIGZyb20gdGhlIGNoaWxk cmVuIHN0cnVjdHVyZXMgdG8KICAgIHRoZSBwYXJlbnQsIHdoaWNoIHdvdWxkIG1hbmFnZSB0 aGUgc3dpdGNoLgogICAgCiAgICAtIEFkZCBhIHJvcGUgc3RydWN0dXJlIHRoYXQgcmVwbGFj ZXMgc3RhbmRhcmQgY2hhcmFjdGVyIGFycmF5cyBmb3Igc3RyaW5ncwogICAgb2Ygc2lnbmlm aWNhbnQgbGVuZ3RoLiBUaGlzIGxlbmd0aCBjb3VsZCBzdGFydCBhdCBhIGNvbnN0YW50LCBv ciBiZQogICAgZGV0ZXJtaW5lZC9tb2RpZmllZCBhdCBydW50aW1lIGRlcGVuZGluZyBvbiBt ZW1vcnkgb3Igc3BlZWQgY29uc3RyYWludHMuCiAgICBUaGlzIGNvdWxkIG1ha2UgaW5zZXJ0 aW9ucyBhbmQgZGVsZXRpb25zIG9uIGxvbmcgc3RyaW5ncyBPKDEpLCBpbnN0ZWFkIG9mCiAg ICB0aGUgY3VycmVudCBPKG4pLiBJdCB3b3VsZCBhbHNvIGRlY3JlYXNlIHRoZSBjaGFuY2Ug b2YgYSBtYWxsb2MvT09NIGZhaWx1cmUsCiAgICBhcyBuZXcgaW5zZXJ0aW9ucyB3b3VsZCBu b3QgcmVxdWlyZSBjb250aWd1b3VzbHkgYWxsb2NhdGVkIG1lbW9yeS4KICAgIAogICAgQWRk IGEgY3Vja29vIGhhc2hpbmcgaW1wbGVtZW50YXRpb24gdG8gc3VwcGxlbWVudCB0aGUgY3Vy cmVudCBzdCBoYXNoIHRhYmxlCiAgICBpbXBsZW1lbnRhdGlvbi4gVGhpcyBjb3VsZCBhbGxv dyBmb3IgdGFibGVzIHdpdGggaGlnaGVyIGxvYWQgZmFjdG9ycywgYW5kIGEKICAgIHN1ZmZp Y2llbnRseSBsaW1iZXIgaW1wbGVtZW50YXRpb24gY291bGQgZGV0ZXJtaW5lIHRoZSBudW1i ZXIgb2YgaGFzaGluZwogICAgZnVuY3Rpb25zIHRvIHVzZSBkZXBlbmRpbmcgb24gdGhlIGxv YWQgcmVxdWlyZWQuIEluIGFkZGl0aW9uLCBjdWNrb28gaGFzaGluZwogICAgaGFzIGEgd29y c3QtY2FzZSBpbmRleGluZyBjb21wbGV4aXR5IG9mIE8oMSksIGluc3RlYWQgb2YgdGhlIGN1 cnJlbnQgTyhuKS4KICAgIFlldCBhbm90aGVyIGFsdGVybmF0aXZlIGlzIGhvcHNjb3RjaCBo YXNoLgoKSSB3b3VsZCBhbHNvIGxpa2UgdG8gYWRkIHNvbWUgbmV3IHN0cnVjdHVyZXMgdG8g dGhlIE1SSToKCiAgICAtIFJ1YnkgcHJvZ3JhbW1lcnMgY291bGQgYmVuZWZpdCBmcm9tIHRo ZSBwcmVzZW5jZSBvZiB2YXJpb3VzIGxpbmtlZCBsaXN0CiAgICBzdHJ1Y3R1cmVzLCBpbmNs dWRpbmcgc2luZ2x5LSBhbmQgZG91Ymx5LWxpbmtlZCBsaXN0cy4gVGhlc2UgY291bGQKICAg IGNvbXBsZW1lbnQgdGhlIEFycmF5IGNsYXNzIGluIHByb3ZpZGluZyB0aGUgYWJzdHJhY3Qg ZnVuY3Rpb25hbGl0eSBvZiBhCiAgICAiTGlzdCIuCgogICAgVHJlZXMgY291bGQgYWxzbyBi ZSBhZGRlZCB0byB0aGUgc3RhbmRhcmQgbGlicmFyeSBpbiBhIG51bWJlciBvZiBmb3JtcywK ICAgIGluY2x1ZGluZyB1bnJlZ3VsYXRlZCwgYmluYXJ5LCBhbmQgbWF4L21pbiBoZWFwcy4g VGhlc2UsIGluIHR1cm4sIGNhbiBiZQogICAgdXNlZCBpbnRlcm5hbGx5IHRvIGltcHJvdmUg dGhlIHBlcmZvcm1hbmNlIG9mIHZhcmlvdXMgb3BlcmF0aW9ucwogICAgKG1vc3QgaW1wb3J0 YW50bHkgc2VhcmNoZXMpLgoKVGhhbmsgeW91IGZvciBjb25zaWRlcmluZyBtZSBhbmQgbXkg cHJvcG9zYWwuIEkgbG9vayBmb3J3YXJkIHRvIGhlYXJpbmcgZnJvbSB5b3UuCgpXaWxsaWFt IFdvb2RydWZmCg== --------------070507000400030208060009 Content-Type: text/plain; charset=UTF-8; name="timeline.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="timeline.txt" KiBNYXkgMjUgLSBKdW5lIDggd291bGQgYmUgZGVkaWNhdGVkIHRvIGxlYXJuaW5nIHRoZSBN UkkncyBzdHJ1Y3R1cmUgYW5kCmltcGxlbWVudGF0aW9uLiBJIG5lZWQgdG8gdW5kZXJzdGFu ZCBSdWJ5J3MgdHlwZSBzeXN0ZW0gYmVmb3JlIEkKbW9kaWZ5L3N1cHBsZW1lbnQgaXQgd2l0 aCBhIHJ1bnRpbWUgdHlwZSBzd2l0Y2hlci4gSSB3b3VsZCBhbHNvIHVzZSB0aGVzZSB0d28K d2Vla3MgdG8gcmVzZWFyY2ggc2ltaWxhciB0eXBlLXN3aXRjaGluZyBwcm9qZWN0cyBib3Ro IGluc2lkZSBhbmQgb3V0c2lkZSBvZgpSdWJ5LCB0byBsZWFybiBSdWJ5J3MgY29kaW5nIHN0 eWxlIGFuZCBjb21tdW5pdHksIGFuZCB0byBzZXQgdXAgYW4gZW52aXJvbm1lbnQKZm9yIGJ1 aWxkaW5nIHRoZSBzb3VyY2UgdHJlZS4KCiogSnVuZSA4IC0gMTUgd291bGQgYmUgZm9yIHBs YW5uaW5nIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIHN3aXRjaGluZyBzeXN0ZW0uIEFzIEkKbWVu dGlvbmVkIGluIG15IHByb3Bvc2FsLCB0aGUgc3dpdGNoZXIgY291bGQgZWl0aGVyIGJlIHRp Z2h0bHkgY291cGxlZCB0byB0aGUKaW50ZXJwcmV0ZXIvVk0gb3IgbW9yZSBsb29zZWx5IHZp YSBhIGhpZXJhcmNoeSBvZiBhYnN0cmFjdCBkYXRhIHR5cGVzIGFuZApjYWxsYmFja3MuIE9u Y2UgYSBtb2RlbCBpcyBkZWNpZGVkIG9uLCBJIHdvdWxkIGRyYWZ0IGl0IGFzIHBzZXVkb2Nv ZGUuCgoqIEp1bmUgMTUgLSAyMiB3b3VsZCBiZSB0aGUgYmVnaW5uaW5nIG9mIGFjdHVhbGx5 IGltcGxlbWVudGluZyB0aGUgc3dpdGNoZXIuIEkKd291bGQgY3JlYXRlIGEgYnJhbmNoIG9m IHRoZSBzdGFibGUgTVJJIHRyZWUsIGFuZCBzdGFydCB3aXRoIGluZGl2aWR1YWwgQURUcwp0 aGF0IHdvdWxkIG1vc3QgYmVuZWZpdCBmcm9tIHN3aXRjaGluZyAoZS5nLiBzdHJpbmdzLCB0 YWJsZXMpLgoKKiBCeSB0aGUgZW5kIG9mIEp1bmUgMjksIEkgd291bGQgbGlrZSB0byBoYXZl IGEgd29ya2luZyBza2VsZXRvbiBmb3JtIG9mIHRoZQpzd2l0Y2hlciB0aGF0IGJ1aWxkcyBh bmQgZnVuY3Rpb25zIHdpdGggYXQgbGVhc3Qgb25lIEFEVCAocHJvYmFibHkgc3RyaW5ncyB2 aWEKY2hhcmFjdGVyIGFycmF5IDwtPiByb3BlIHN3aXRjaGluZykuCgoqIEZyb20gSnVuZSAy OSB0byBKdWx5IDEzLCBJIHdvdWxkIGNvbXBsZXRlIHRoZSBzd2l0Y2hlciBhbmQgYWRkIGFk ZGl0aW9uYWwKc3dhcGFibGUgdHlwZXMgdG8gaXQgKHNwZWNpZmljYWxseSBoYXNoIHRhYmxl IHN3YXBwaW5nKS4gSW5jbHVkZWQgaW4gdGhpcyBwZXJpb2QKd291bGQgYmUgY3JlYXRpbmcg cGFzc2luZyBhIHNlcmllcyBvZiByaWdvcm91cyBiZW5jaG1hcmtzIHRvIGVuc3VyZSB0aGF0 CnBlcmZvcm1hbmNlIGRvZXNuJ3QgZGVncmFkZSBkdXJpbmcgc3dhcHMgb3IgYXMgYSByZXN1 bHQgb2YgdGhlbS4gSW4gYWRkaXRpb24sCkkgd291bGQgY3JlYXRlIGEgc3VpdGUgb2YgdHlw ZSBhbmQgc3RyZXNzIHRlc3RzIGFuZCB1c2UgdGhlbSBkdXJpbmcgdGhpcyBwZXJpb2QuCgoq IEJ5IEp1bHkgMjAgSSB3b3VsZCBsaWtlIHRvIGhhdmUgdGhlIHN3aXRjaGVyIGZ1bGx5IGF2 YWlsYWJsZSBmb3IgTVJJCmRldmVsb3BlcnMgYW5kIHRoZSBncmVhdGVyIFJ1YnkgY29tbXVu aXR5IHRvIHRlc3QgaW4gYSBkZXZlbG9wbWVudCBidWlsZC4KCiogRnJvbSBKdWx5IDIwIHRv IEF1Z3VzdCAzLCBJIHdvdWxkIGFkZCBhZGRpdGlvbmFsIHR5cGVzIHRvIG15IE1SSSBicmFu Y2guIFRoZXNlCnR5cGVzIHdvdWxkIG5vdCBuZWNlc3NhcmlseSBoYXZlIHRvIGJlIGludm9s dmVkIGluIHRoZSB0eXBlIHN3aXRjaGVyLApidXQgY291bGQgc2ltcGx5IGJlIGNvbnZlbmll bnQgdHlwZXMgdGhhdCBSdWJ5IGN1cnJlbnRseSBsYWNrcyAobGlrZSBoZWFwcywKZ2VuZXJh bCBwdXJwb3NlIHRyZWVzLCBhbmQgbGlua2VkIGxpc3RzKS4KCiogRnJvbSBBdWd1c3QgMyB0 byBBdWd1c3QgMTAgSSB3b3VsZCBjb21wbGV0ZSwgYW5kIGJlbmNobWFyayB0aGVzZSBhZGRp dGlvbmFsCnR5cGVzLiBUaGUgdWx0aW1hdGUgZ29hbCB3b3VsZCBiZSB0byBoYXZlIG5lYXIt bmF0aXZlIHBlcmZvcm1hbmNlIGZvciBzaW1wbGUKdHJlZSBhbmQgbGlzdCBvcGVyYXRpb25z LCBhbmQgSSB0aGluayB0aGlzIGNvdWxkIGJlIGFjY29tcGxpc2hlZCB3aXRoIHJpZ29yb3Vz CmltcGxlbWVudGF0aW9uKHMpLiBGcm9tIEF1Z3VzdCAxMCB0byAxNyBJIHdvdWxkIGNvbXBs ZXRlIG15IHRlc3Rpbmcgb2YgdGhlIG5ldwp0eXBlcyBhbmQgcHJvdmlkZSB0aGVtIG9uY2Ug YWdhaW4gdG8gdGhlIGNvbW11bml0eSBmb3IgcmV2aWV3IGJlZm9yZSBmb3JtYWxseQpyZXF1 ZXN0aW5nIHRoZXkgYmUgYWRkZWQgdG8gdGhlIG1haW5saW5lIE1SSS4KCiogRmluYWxseSwg ZnJvbSBBdWd1c3QgMTcgdG8gMjQsIEkgd291bGQgd29yayB0byBnZXQgbXkgY29udHJpYnV0 aW9ucyBtZXJnZWQKaW50byBhbiBvZmZpY2lhbCBicmFuY2ggZm9yIGV2ZW50dWFsIHJlbGVh c2Ugd2l0aCB0aGUgTVJJLCBhbmQgdG8gYWxlcnQgb3RoZXIKUnVieSBpbXBsZW1lbnRhdGlv bnMgb2YgdGhlIGNoYW5nZXMgc28gdGhhdCB0aGV5IGNvdWxkIGJyaW5nIHRoZW0gaW4gYW5k IGFwcGx5CnRoZW0uCg== --------------070507000400030208060009--