[#23657] [Bug #1550] String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes — Run Paint Run Run <redmine@...>

Bug #1550: String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes

13 messages 2009/06/01

[#23729] [Bug #1583] Time + String no Longer Raises TypeError? — Run Paint Run Run <redmine@...>

Bug #1583: Time + String no Longer Raises TypeError?

14 messages 2009/06/05

[#23770] [Bug #1595] rake unusable on windows install — Robert Gonzalez <redmine@...>

Bug #1595: rake unusable on windows install

10 messages 2009/06/09

[#23869] [Bug #1640] [PATCH] Documentation for the Rational Class — Run Paint Run Run <redmine@...>

Bug #1640: [PATCH] Documentation for the Rational Class

12 messages 2009/06/16

[#23903] [Bug #1648] Rational#div Raises NoMethodError for Invalid Argument — Run Paint Run Run <redmine@...>

Bug #1648: Rational#div Raises NoMethodError for Invalid Argument

9 messages 2009/06/17

[#23977] [ANN] meeting log of RubyDeveloperKaigi20090622 — "Yugui (Yuki Sonoda)" <yugui@...>

Hi,

41 messages 2009/06/23
[#23979] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Run Paint Run Run <runrun@...> 2009/06/23

Thanks for the update. :-)

[#24173] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — "NARUSE, Yui" <naruse@...> 2009/07/07

Sorry for late response,

[#24174] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Luis Lavena <luislavena@...> 2009/07/07

On Tue, Jul 7, 2009 at 12:12 AM, NARUSE, Yui<naruse@airemix.jp> wrote:

[#24242] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Charles Oliver Nutter <headius@...> 2009/07/09

On Mon, Jul 6, 2009 at 10:18 PM, Luis Lavena<luislavena@gmail.com> wrote:

[#24010] [Bug #1685] Some windows unicode path issues remain — B Kelly <redmine@...>

Bug #1685: Some windows unicode path issues remain

26 messages 2009/06/24
[#29189] [Bug #1685] Some windows unicode path issues remain — Yuki Sonoda <redmine@...> 2010/04/01

Issue #1685 has been updated by Yuki Sonoda.

[#29200] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/01

Yuki Sonoda wrote:

[#29892] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/29

Hi,

[#24058] [Bug #1696] http downloads are unuseably slow — Steven Hartland <redmine@...>

Bug #1696: http downloads are unuseably slow

19 messages 2009/06/27

[#24063] [Feature #1697] Object#<=> — Marc-Andre Lafortune <redmine@...>

Feature #1697: Object#<=>

15 messages 2009/06/28

[ruby-core:23704] Re: Standard Ruby bytecode

From: Rick DeNatale <rick.denatale@...>
Date: 2009-06-04 14:34:26 UTC
List: ruby-core #23704
On Thu, Jun 4, 2009 at 7:36 AM, Eero Saynatkari <ruby-ml@kittensoft.org> wrote:
> Excerpts from Ioannis Nousias's message of Thu Jun 04 12:11:06 +0300 2009:
>> my question to the ruby developer community is: has anyone considered
>> using LLVM's [1] bytecode for this purpose. I don't know how applicable
>> it is, but I would expect certain advantages using a well establish
>> format, instead of yet-another-custom-bytecode, with the potential of
>> taping into LLVM's resources.
>
> In short, it is not possible to "use LLVM's bytecode" for
> this, because it is not representative of a Ruby program.
> Basically, that question is the same as "is it possible to
> use ASM to represent a compiled Ruby file?"
>
> (By the by, LLVM uses the term "bitcode" -- not a nag, it
> will just be easier to search for those terms)
>
> It is certainly possible to actually use LLVM and thereby
> possibly its bitcode which is what Rubinius is doing (as
> is MacRuby?) If such bitcode were dumped, though, it would
> still be highly dependent on the target VM,

I have to agree with this.  My brief analysis of LLVM and it's
'instruction set' impresses me that it's much more targeted towards
statically typed languages.  The motivation of LLVM seems to be to
provide a common internal representation for GCC like compilers. In
many ways it seems to be a reinvention of the uncol idea from the late
1950s:
http://en.wikipedia.org/wiki/UNCOL

The call and invoke instructions appear as if they make no concessions
for rubyish method dispatch, or even the more static virtual function
linkage in the JVM.

The JVM guys are already working on supporting more dynamic invocation
in order to better support languages like Ruby, see the slides from
the presentation given two days ago at JavaOne by John Rose and Brian
Goetz:
http://blogs.sun.com/jrose/entry/tuesday_at_javaone

So LLVM starts out behind other VM architectures like the JVM which
are moving to better support dynamic languages.

Another issue with LLVM seems to be the approach to GC integration.
While LLVM does provide for interfacing to a GC with things like
read-barrier and write-barrier hooks, it requires the compiler to
insert these into the bitcode.  This is in contrast to most of the GC
VMs of which I'm aware which handle gc bookkeeeping inside the
implementation of bytecodes.  And the actual GC implementation is done
by language/implentation specific plugins. There seem to be questions
about how efficient a GC implemented within the LLVM framework can be
in contrast to GCs built in to a VM.


-- 
Rick DeNatale

Blog: http://talklikeaduck.denhaven2.com/
Twitter: http://twitter.com/RickDeNatale
WWR: http://www.workingwithrails.com/person/9021-rick-denatale
LinkedIn: http://www.linkedin.com/in/rickdenatale

In This Thread