ruby-x.github.io/app/views/pages/index.html.haml

112 lines
3.5 KiB
Plaintext
Raw Normal View History

2018-04-10 17:39:03 +02:00
.row
%h2.center Compiling Ruby to Binary.
%div
%p.center
%span
Putting wings on ruby to let you fly (may take X years).
.row
.tripple
2018-04-20 20:26:31 +02:00
%h2.center What
2018-04-10 17:39:03 +02:00
%p
2018-04-20 20:26:31 +02:00
RubyX
%b compiles
ruby code to binary.
%br
In
%b 100%
pure ruby.
2018-04-10 17:39:03 +02:00
%p
2018-04-20 20:26:31 +02:00
The goal here is to prove that dynamic languages do not have to be slow.
%br
Only interpretation is slow, but when
ruby is
%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.
2018-04-10 17:39:03 +02:00
%p
2018-04-20 20:26:31 +02:00
RubyX is here to
=succeed "," do
=link_to "empower you" , "/project/motivation.html"
to make your ruby shine as much as you like.
2018-04-10 17:39:03 +02:00
.tripple
%h2.center Status
%p
2019-02-01 18:33:06 +01:00
The RubyX compiler is working (ie creates binaries), and the
2018-04-20 20:26:31 +02:00
=link_to "architecture", "/rubyx/layers.html"
has been refined over several years.
%p
2019-02-01 18:33:06 +01:00
A substantial part of the ruby language has been implemented:
2018-04-10 17:39:03 +02:00
%ul
%li
2018-04-20 20:26:31 +02:00
Object oriented
=succeed "." do
=link_to "calling semantics" , "/rubyx/calling.html"
2019-02-01 18:33:06 +01:00
%li
Basic
=link_to "block creation" , "/blog/implicit-blocks-are-working"
and passing.
2018-04-20 20:26:31 +02:00
%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
2018-04-10 17:39:03 +02:00
= succeed "," do
2018-04-20 20:26:31 +02:00
=link_to "classes, types" , "/rubyx/parfait.html"
2018-04-11 09:20:08 +02:00
methods and basic types.
2018-04-10 17:39:03 +02:00
%li
2018-04-20 20:26:31 +02:00
=ext_link "Risc machine abstraction" , "https://github.com/ruby-x/rubyx/tree/master/lib/risc"
(includes extensible instruction)
2018-04-10 17:39:03 +02:00
%li
2018-04-20 20:26:31 +02:00
A minimal Arm and Elf implementation to create
= succeed "." do
%b working binaries
2019-02-01 18:33:06 +01:00
%h2.center Upcoming work
2018-04-21 09:20:31 +02:00
%p
2019-02-01 18:33:06 +01:00
But there is still a lot of work, here are just the next few topics
2018-04-21 09:20:31 +02:00
%ul
2019-02-01 18:33:06 +01:00
%li Dynamic Memory management
%li Benchmarks for calling and integer
%li Start stdlib with String and files
2018-04-21 09:20:31 +02:00
By then we may be in the foothills, but nowhere near even basecamp, let alone there.
2018-04-10 17:39:03 +02:00
.tripple
%h2.center Docs
%p
The short introduction is under the
2018-04-20 20:26:31 +02:00
=link_to "architecture" , "/rubyx/layers.html"
2018-04-10 17:39:03 +02:00
menu.
2019-02-01 18:33:06 +01:00
%p
The presentation for
= ext_link "GrillRb" , "/slides/grillrb"
is more detailed than the previous unconf Hamburg one.
But a 20min video was made in hamburg and can be found
2019-07-19 19:12:59 +02:00
= ext_link "on youtube" , "https://youtu.be/ojW-q_wiSn8"
2018-04-10 17:39:03 +02:00
%p
2018-04-20 20:26:31 +02:00
To get to know the system, there is also an interpreter and a basic
=succeed "." do
=link_to "visual debugger" , "rubyx/debugger.html"
2018-04-10 17:39:03 +02:00
%p
The
2018-04-20 20:26:31 +02:00
=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"
2018-04-10 17:39:03 +02:00
or write a
= succeed "." do
2018-04-20 20:26:31 +02:00
=ext_link "mail to the group" , "https://groups.google.com/forum/#!forum/ruby-x"
2018-04-10 17:39:03 +02:00
%h2.center News
%p
2018-04-10 21:48:23 +02:00
Last but not least, i try to get recent developments down on paper when they are
still fresh.
2018-04-11 18:34:35 +02:00
%p=post_link(Post.posts.values[0])
%p=post_link(Post.posts.values[1])
%p=post_link(Post.posts.values[2])