.row %h2.center The community's Ruby implementation %div %p.center %span Ruby implemented in 100% Ruby, for everyone. .row .tripple %h2.center What %p RubyX %b compiles Ruby code to binary. %br In %b 100% pure Ruby. %p The goal here is to prove that dynamic languages do not have to be slow. %br Only interpretation is slow, but when Ruby is =succeed "," do %b compiled to binary it can be really fast. %p How fast (X times), will eventually depend on the community. The RubyX approach works, but to create an MRI compatible Ruby will take many more man-years than I have. %p RubyX is here to =succeed "," do =link_to "empower you" , "/project/motivation.html" to make your Ruby shine as much as you like. %p Since RubyX is written in Ruby, anyone can easily join, and the project is very open to newcomers. In time the idea is to implement a democratic version of open source, as an alternative the current "benevolent dictator" model. %p Contrary to what many newcomers think, ruby-x is also technically easy to join. In the end it is just Ruby, and only a very small percent of code is low level. We have a list =ext_link "of issues" , "https://github.com/ruby-x/rubyx/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+newbie%22" in GitHub for beginners. .tripple %h2.center Status %p The RubyX compiler is working (ie creates binaries), and the =link_to "architecture", "/rubyx/layers.html" has been refined over several years. %p A substantial part of the Ruby language has been implemented: %ul %li Object oriented =succeed "." do =link_to "calling semantics" , "/rubyx/calling.html" %li Basic =link_to "block creation" , "/blog/implicit-blocks-are-working" and passing. %li Dynamic = succeed "." do =link_to "method resolution" ,"/rubyx/method_resolution.html" %li Control Structures, variables and assignment, integer operators. %li Object based =succeed "." do =link_to "memory" ,"/rubyx/memory.html" %li A minimal Runtime of = succeed "," do =link_to "classes, types" , "/rubyx/parfait.html" methods and basic types. %li =ext_link "Risc machine abstraction" , "/rubyx/layers.html#risc" (with SSA and register allocation) %li A minimal ARM and ELF implementation to create = succeed "." do %b working binaries %h2.center Upcoming work %p But there is still a lot of work, here are some of the next few topics %ul %li Inlining and static memory analysis %li Start stdlib with String and files %li Dynamic Memory management There are also many small things anybody can =ext_link "start with." , "https://github.com/ruby-x/rubyx/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+newbie%22" .tripple %h2.center Docs %p The short introduction is under the =link_to "architecture" , "/rubyx/layers.html" menu. %p The presentation for = ext_link "GrillRb" , "/slides/grillrb" is more detailed than the previous unconf Hamburg one. But a 20 minute video was made in Hamburg and can be found =succeed "." do = ext_link "on youtube" , "https://youtu.be/ojW-q_wiSn8" %p To get to know the system, there is also an interpreter and a basic =succeed "." do =link_to "visual debugger" , "rubyx/debugger.html" %p The =link_to "about", "/project/motivation.html" section has some info of when and how this started. If you feel like contributing =link_to "read this", "/project/contribute.html" or write a = succeed "." do =ext_link "mail to the group" , "https://groups.google.com/forum/#!forum/ruby-x" %h2.center News %p Last but not least, I try to get recent developments down on paper when they are still fresh. %p=post_link(Post.posts.values[0]) %p=post_link(Post.posts.values[1]) %p=post_link(Post.posts.values[2])