Summer of Code에 지원했다. Project description은 아래와 같다. 크게 formal할 필요는 없을 것 같아서 대충 썼는데… 벌써 5700명이나 지원했다고 하니, 이 정도로는 뽑히기는 좀 힘들지 않을까 싶기도 하고… 구글의 application form의 Country 항목에는 South Korea가 위쪽에 올라와있는데, 의외로 우리나라의 지원자는 10명 뿐이다. PST로 14일이 마감이니 지원할 생각이 있으나 못하신 분들은 얼른 하시길.
Ruby .NET – Ruby compiler on .NET platform.
INTRODUCTION
Ruby .NET is an Ruby compiler implementation on Microsoft .NET platform. Not just adding another .NET language, but Ruby developers could interop with .NET platform easily. Besides, we can expect some performance boost.
Project Page (temporary): http://lastmind.net/twiki/bin/view/Main/RubyDotNet
APPROACH
Now I’m considering IronPython approach: Iron Python (http://www.ironpython.com/) is a C# implementation of Python interpreter and works on CLR. It shows better performance than original Python interpreter implementation. I’ve investigate IronPython code and found that it just parse Python code, build AST, and translate to CLI code using .NET reflection. I believe I can take same appraoch in Ruby .NET.
ISSUES
– There’s no authentic Ruby syntax reference except the original Ruby compiler implementation.
"I’m afraid, the only complete reference for Ruby’s grammar is the YACC input file "parse.y" from the ruby source distribution."
(from http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/15608)
– Semantics for Ruby statements is just hardwired into Ruby compiler implementation.
RELATED PRODUCTS
Of course, I’ve seen around several efforts to develop Ruby .NET, but I believe no production-quality project is available so that It’s worth to trying.
IronPython: http://www.ironpython.com/
JRuby: http://jruby.sourceforge.net/
rubydotnet: http://rubydotnet.sourceforge.net/
NetRuby: http://www.geocities.co.jp/SiliconValley-PaloAlto/9251/ruby/nrb.html
Ruby .NET Compiler: http://www.asakawa.net/ruby/rubynet_memo.html
Ruby – Perl Parse::RecDescent grammar: http://cpan.uwinnipeg.ca/htdocs/parrot/Ruby.html
RubySharp: http://www.pronovomundo.com/htu/theses2004/rubysharp_hedstrom_thesis_final_040526.pdf
EXPERIENCE
Compiler theory is a crucial skill to develop Ruby .NET. I’ve finished compiler course for undergraduate in KAIST and I believe I have. I have 3.5 year C/C++ system/network programming experience in POSIX platform as an alternative job to military service. I am specially interested in distributed computing technologies in enterprise environment like several RPC technologies, CORBA, DCOM, .NET Remoting, Indigo, and Web Services. I love to learn programming languages like C/C++, Java, C#, Perl, Python, Ruby. Ruby is my favorite one these days.
Update: tj형의 의견에 따라 좀 더 formal하게 대폭 수정해서 다시 application 제출 했다.
큭, 저도 하고 싶은데 다음주에 4주훈련 갑니다. ㅠ.ㅠ
멋져요.
얼마전 ruby-talk에서 화제가 된 적이 있었는데, 주인공이 세라비님이신 거였나요?
http://www.mono-project.com/StudentProjects#Ruby.NET
Ruby Central Inc.도 Mentoring Organization으로 신청한다는 얘기가 있었는데, 뭔가 석연치 않은 이유로 탈락되는 바람에 아쉬웠었죠.
어쨌든 꼭 성공하셔서 상금도 타시고, IronPython을 능가하는 CLI 루비 컴파일러도 만들어주시기 바랍니다.
may force be with you!!!
s/may force/may the force/