Ruby => Rite, AST => Bytecode?

Ask a Question related to Ruby, Design and Development.

  1. #1

    Default Ruby => Rite, AST => Bytecode?

    Matz and fellow Rubyists,

    On pragprog, we're sort-of discussing the creation of a new language
    ("Pragmatic") as an exercise in extending one's programming
    experience. Now, there's a lot of discussion on the low-end, but the
    most interesting to me was this, and I was wondering if something
    like the idea behind Juice might be a good thing for Rite, rather
    than a "pure" bytecode setup.

    What do you think?

    -austin

    On Wed, 30 Jul 2003 11:57:26 +1000, Sumskas, Peter (Peter) wrote:
    [...]
    > The idea behind Juice was to encode a portable encoding of the
    > program not as bytecode (which is the usual way to do things) but
    > to encode the AST as the portable format. This lead to several
    > interesting features for Juice:
    >
    > * the binaries were actually smaller than the equivalent bytecodes
    > and smaller by far that machine-specific binaries.
    > * the binaries contained far more information about program
    > structure than the equivalent bytecodes did. This led to being
    > able to take better advantage of the target platform. A JIT
    > compiler would translate the AST into the backend representation
    > and it had a much easier time of optimizing the code than an
    > equivalent JIT compiler for a bytecode system would have. I saw
    > this demonstrated in '97 or '98. Given that Juice had less
    > resources than Java devoted to it you can imagine how impressive
    > it was to see a recoding of some Java applets executing
    > approximately five times as fast as the original Java did (I
    > realize this is highly subjective but the implication is that
    > wherever the limitation was with Java they had taken the wrong
    > approach to portability and performance).
    > * due to the small size of the binaries it was faster, on networks
    > and PCs of the day, to download a Juice applet and JIT-compile
    > them on the target machine than it was to download the
    > equivalent platform-specific binary and execute it.
    [...]

    --
    austin ziegler * [email]austin@halostatue.ca[/email] * Toronto, ON, Canada
    software designer * pragmatic programmer * 2003.07.29
    * 23.18.28




    Austin Ziegler Guest

  2. Similar Questions and Discussions

    1. [Rite] Byte-Code Compiler in Ruby
      Hi, I am fascinated by the many new ideas presented by matz for Rite. Why not write the whole Ruby-to-Bytecode compiler in Ruby itself? As...
    2. Ruby Rite news live from Rubyconf 2003
      Chad Fowler has been reporting live from the Rubyconf 2003. A digest of new information regarding Ruby 2.0 (a.k.a. "Rite") can be found at:...
    3. Perl B:Bytecode anyone ?
      Hi, I've been trying to compile perl scripts into bytecode. Now, from what I understand I can use either perlcc -B script.pl or perl -MO=bytecode...
    4. ruby-talk: 80813 (Rite/Ruby2.0 & Ruby vs OCaml)
      Hope nobody finds this annoying. Somehow I missed this message when it was originally sent, but I thought my reply might be useful to sombody. ...
    5. Rite/Ruby2.0 & Ruby vs OCaml
      Hi All, I'm new here, and I hope I don't offend anyone by mentioning a different programming language here on Ruby-Talk. I have two questions...
  3. #2

    Default Re: Ruby => Rite, AST => Bytecode?


    --=-HTb4o42S2mfm24mi73Jy
    Content-Type: text/plain
    Content-Transfer-Encoding: quoted-printable

    On Tue, 2003-07-29 at 21:18, Austin Ziegler wrote:
    > Matz and fellow Rubyists,
    >=20
    > On pragprog, we're sort-of discussing the creation of a new language
    > ("Pragmatic") as an exercise in extending one's programming
    > experience. Now, there's a lot of discussion on the low-end, but the
    > most interesting to me was this, and I was wondering if something
    > like the idea behind Juice might be a good thing for Rite, rather
    > than a "pure" bytecode setup.
    Oooh, interesting -- I like the idea, because it allows for far more
    introspection into the AST while giving a compact binary format to
    actually run.

    It might make a really perfect middle ground for such a highly dynamic
    language such as our favorite, Ruby...

    Ari

    --=-HTb4o42S2mfm24mi73Jy
    Content-Type: application/pgp-signature; name=signature.asc
    Content-Description: This is a digitally signed message part

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.2 (GNU/Linux)

    iD8DBQA/JzwhtP09exA3hooRArJCAKCBGjyxaz9H9Pv3HU9dgu3Hmtrq+Q CeJbru
    Nhjmgq1ZTxShQoww1cyFGrs=
    =d+1v
    -----END PGP SIGNATURE-----

    --=-HTb4o42S2mfm24mi73Jy--


    Aredridel Guest

  4. #3

    Default Re: Ruby => Rite, AST => Bytecode?

    In article <2003729231834.987146@PADD>,
    Austin Ziegler <austin@halostatue.ca> wrote:
    >Matz and fellow Rubyists,
    >
    >On pragprog, we're sort-of discussing the creation of a new language
    >("Pragmatic") as an exercise in extending one's programming
    >experience. Now, there's a lot of discussion on the low-end, but the
    >most interesting to me was this, and I was wondering if something
    >like the idea behind Juice might be a good thing for Rite, rather
    >than a "pure" bytecode setup.
    >
    >What do you think?
    Sounds like an interesting discussion, how does one get on this mailing
    list?

    Phil
    Phil Tomson Guest

  5. #4

    Default Re: Ruby => Rite, AST => Bytecode?

    On Thu, 31 Jul 2003, Phil Tomson wrote:
    > In article <2003729231834.987146@PADD>,
    > Austin Ziegler <austin@halostatue.ca> wrote:
    > >On pragprog, we're sort-of discussing the creation of a new language
    > >("Pragmatic") as an exercise in extending one's programming
    > >experience.
    >
    > Sounds like an interesting discussion, how does one get on this mailing
    > list?
    >

    [email]pragprog-subscribe@yahoogroups.com[/email] will get you on the list that
    generated the idea.

    [email]pragmatic_lang-subscribe@yahoogroups.com[/email] will get you on the (new)
    implementors list

    -pate


    > Phil
    >



    Pat Eyler Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139