[#16116] RCRchive shutting down — "David A. Black" <dblack@...>

Hi everyone --

22 messages 2008/04/03
[#16119] Re: [ANN] RCRchive shutting down — "Robert Dober" <robert.dober@...> 2008/04/03

This is quite sad news, I feel that a mailing list does not offer all

[#16121] Re: [ANN] RCRchive shutting down — Yukihiro Matsumoto <matz@...> 2008/04/03

Hi,

[#16122] Re: [ANN] RCRchive shutting down — "Robert Dober" <robert.dober@...> 2008/04/03

On Thu, Apr 3, 2008 at 12:01 PM, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

[#16123] issue tracking (Re: [ANN] RCRchive shutting down) — Yukihiro Matsumoto <matz@...> 2008/04/03

Hi,

[#16124] Re: issue tracking (Re: [ANN] RCRchive shutting down) — "Meinrad Recheis" <meinrad.recheis@...> 2008/04/03

On Thu, Apr 3, 2008 at 1:13 PM, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

[#16128] RUBY_IMPLEMENTATION — Yukihiro Matsumoto <matz@...>

Hi,

60 messages 2008/04/03
[#16139] Re: RUBY_IMPLEMENTATION — Paul Brannan <pbrannan@...> 2008/04/03

On Thu, Apr 03, 2008 at 11:41:41PM +0900, Yukihiro Matsumoto wrote:

[#16143] Re: RUBY_IMPLEMENTATION — Eric Hodel <drbrain@...7.net> 2008/04/03

On Apr 3, 2008, at 10:59 AM, Paul Brannan wrote:

[#16146] Re: RUBY_IMPLEMENTATION — Yukihiro Matsumoto <matz@...> 2008/04/03

Hi,

[#16147] Re: RUBY_IMPLEMENTATION — Ezra Zygmuntowicz <ezmobius@...> 2008/04/03

[#16149] Re: RUBY_IMPLEMENTATION — Charles Oliver Nutter <charles.nutter@...> 2008/04/03

Ezra Zygmuntowicz wrote:

[#16155] Re: RUBY_IMPLEMENTATION — "Yemi I. D. Bedu" <yemi@...> 2008/04/03

Hello,

[#16158] Re: RUBY_IMPLEMENTATION — Charles Oliver Nutter <charles.nutter@...> 2008/04/03

Yemi I. D. Bedu wrote:

[#16175] Re: RUBY_IMPLEMENTATION — Eleanor McHugh <eleanor@...> 2008/04/04

On 4 Apr 2008, at 00:23, Charles Oliver Nutter wrote:

[#16194] Re: RUBY_IMPLEMENTATION — Chris Cummer <chris@...> 2008/04/04

On 4-Apr-08, at 3:05 AM, Eleanor McHugh wrote:

[#16195] Re: RUBY_IMPLEMENTATION — "Luis Lavena" <luislavena@...> 2008/04/04

On Fri, Apr 4, 2008 at 2:15 PM, Chris Cummer <chris@postal-code.com> wrote:

[#16240] syntax request — "ry dahl" <ry@...>

Often times when one has many long arguments and orders them like this

42 messages 2008/04/06
[#16263] Re: syntax request — "Bill Kelly" <billk@...> 2008/04/07

[#16266] Re: syntax request — "David A. Black" <dblack@...> 2008/04/08

On Tue, 8 Apr 2008, Bill Kelly wrote:

[#16282] Re: syntax request — Paul Brannan <pbrannan@...> 2008/04/08

On Tue, Apr 08, 2008 at 02:23:26PM +0900, David A. Black wrote:

[#16290] Could someone confirm signal handling is broken on OSX? — Dave Thomas <dave@...>

I've raised this before, but no one replied. I'd like to double check

12 messages 2008/04/08

[#16359] design meeting — Yukihiro Matsumoto <matz@...>

Hi,

18 messages 2008/04/12

[#16397] Ruby 1.8.7-preview1 has been released — "Akinori MUSHA" <knu@...>

Folks,

16 messages 2008/04/15

[#16482] Performance on method dispatch for methods defined via define_method — "Robert Dober" <robert.dober@...>

Hi

32 messages 2008/04/22
[#16483] Re: Performance on method dispatch for methods defined via define_method — Paul Brannan <pbrannan@...> 2008/04/22

On Wed, Apr 23, 2008 at 12:39:29AM +0900, Robert Dober wrote:

[#16484] Re: Performance on method dispatch for methods defined via define_method — "Robert Dober" <robert.dober@...> 2008/04/22

On Tue, Apr 22, 2008 at 8:46 PM, Paul Brannan <pbrannan@atdesk.com> wrote:

[#16487] Re: Performance on method dispatch for methods defined via define_method — "David A. Black" <dblack@...> 2008/04/22

Hi --

[#16488] Re: Performance on method dispatch for methods defined via define_method — "Robert Dober" <robert.dober@...> 2008/04/22

On Tue, Apr 22, 2008 at 10:44 PM, David A. Black <dblack@rubypal.com> wrote:

[#16490] Re: Performance on method dispatch for methods defined via define_method — "David A. Black" <dblack@...> 2008/04/22

Hi --

[#16501] Re: Performance on method dispatch for methods defined via define_method — ts <decoux@...> 2008/04/23

Robert Dober wrote:

[#16507] Drop :: as a . synonym — "David A. Black" <dblack@...>

Hi --

50 messages 2008/04/23
[#16511] Re: [RCR] Drop :: as a . synonym — Charles Oliver Nutter <charles.nutter@...> 2008/04/23

David A. Black wrote:

[#16512] Re: [RCR] Drop :: as a . synonym — "David A. Black" <dblack@...> 2008/04/23

Hi --

[#16525] Re: [RCR] Drop :: as a . synonym — Charles Oliver Nutter <charles.nutter@...> 2008/04/23

David A. Black wrote:

[#16527] Re: [RCR] Drop :: as a . synonym — "David A. Black" <dblack@...> 2008/04/23

Hi --

[#16534] Re: [RCR] Drop :: as a . synonym — Thomas Enebo <Thomas.Enebo@...> 2008/04/23

David A. Black wrote:

[#16546] Re: [RCR] Drop :: as a . synonym — "David A. Black" <dblack@...> 2008/04/24

Hi --

[#16552] Re: [RCR] Drop :: as a . synonym — "Jeremy McAnally" <jeremymcanally@...> 2008/04/24

Or changing #send to private...or (insert progressive but code

[#16564] Re: [RCR] Drop :: as a . synonym — Charles Oliver Nutter <charles.nutter@...> 2008/04/24

Jeremy McAnally wrote:

[#16567] Re: [RCR] Drop :: as a . synonym — "David A. Black" <dblack@...> 2008/04/24

Hi --

[#16570] Re: [RCR] Drop :: as a . synonym — Yukihiro Matsumoto <matz@...> 2008/04/24

Hi,

[#16531] Re: [RCR] Drop :: as a . synonym — "Eric Mahurin" <eric.mahurin@...> 2008/04/23

On Wed, Apr 23, 2008 at 9:21 AM, David A. Black <dblack@rubypal.com> wrote:

Re: [ruby-core:16395] RFC: VM Instruction Manipulation gem(s)?

From: "Rocky Bernstein" <rocky.bernstein@...>
Date: 2008-04-16 08:19:48 UTC
List: ruby-core #16405
Chiyuan wrote about the current thinking of an instruction manipulator.
However if you are considering changing VM bytecodes, I have a suggestion
for one that would allow debugging without having to compile in trace
instructions for every different line number represented in the code.

It would be great if there were an additional kind of "trace" instruction
and some kind of API to set and remove these.

The way it would work follows. You specify the position of an opcode in an
instruction sequence. The opcode gets overwritten with this new trace
opcode, let's call it rtrace.  The original instruction before overwriting
with the rtrace instruction gets copied someplace. In addition, there is
some free space at the end of the instruction sequence, of about 8 words.
More on that magic number 8 below.

The implementation of this rtrace instruction is almost like the
implementation of the trace instruction which calls a trace hook. However on
return from the trace-hook call, the original instruction that didn't get
executed because of overwriting with an rtrace instruction would be copied
to this free area at the end of the instruction sequence. It would be
followed by a JUMP instruction to the location of the PC value had that
original instruction been executed. Finally the implementation of the new
trace instruction would change the PC to point to this temporary area which
starts after the finish of the normal instruction sequence.  So about 8
words are needed, because the longest instruction is 6 words and 2 words are
needed for the JUMP instruction. (I may be a little bit off in terms of
details, but I hope you get the idea.)

I would be happy to provide a sample implementation as a patch if this would
help or make things clearer.

I thought about out what it would take to do the above *without* changing
the VM or extending the instruction sequence by 8 words, but instead by
adding this completely inside a trace hook. If the trap replacement
instruction is not to be cleared after it is hit (i.e. a gdb "temporary
breakpoint"), then the original opcode can be put back and the PC adjusted.
However if this trap is to be more permanent, then you also have to trap at
the following instruction to put back in the trap again for a future time.
And since there is branching, it might involve a temporary trap at two
locations of which only one will get hit, so that second location would have
to be cleared as well.

And there is one other problem in trying to do this completely in a trace
hook. The current trace instruction is two words long, but there are some
instructions like "leave" which are only one word long. Since we can't
always assume we can read after the last instruction of an instruction
sequence which can be "leave" instruction, replacing this instruction in
this kind of situation would have to be disallowed.

On Wed, Apr 16, 2008 at 12:41 AM, SASADA Koichi <ko1@atdot.net> wrote:

> Hi,
>
>
> Rocky Bernstein wrote:
>
> > Is anyone aware of or working on a package/gem for facilitation VM
> > instruction manipulation? Things like replace, insert or delete a
> > sequence
> > of VM instructions. I understand rubinius may have something like this.
> > I
> > ask because a colleague is considering writing one.
> >
> > (I've posted a query on ruby-talk but so there's been silence which I
> > guess
> > means there's been nothing.)
> >
>
> I don't know about it.
>
> But VM bytecodes are not stable, because I want to remove/modify some
> instructions which are not used frequently such as "definemethod".
>
> And I'm not sure which API is suitable.  If you have any idea, please
> teach me or see your implementation.
>
> Regards,
> --
> // SASADA Koichi at atdot dot net
>
>

In This Thread