guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lua


From: Andy Wingo
Subject: Re: Lua
Date: Fri, 04 Jun 2010 00:04:02 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux)

On Thu 03 Jun 2010 22:36, No Itisnt <address@hidden> writes:

>> Not a known bug, no. Can you make a test case?
>
> Yes, attached. It appears to happen when (rnrs control) is used. This
> is with the latest master commit.

Thanks!

> It's not urgent, but Lua does mandate tail call optimization.

I think the basic thing would be the equivalent of:

  (lambda args ... (return (foo bar ...)) ...)

  =>
  (lambda args
    (let ((unique-tag (make-prompt-tag)))
      (% unique-tag 
         (...
          (abort-to-prompt unique-tag (lambda () (foo bar ...)))
          ...)
         (lambda (unused-cont thunk) (thunk)))))
      
And from there the compiler would be resposible for removing the prompt,
if possible.

But, I could be totally misled here and there's some much more simple
solution.

> On a related note, what would be the best way to benchmark a compiler
> optimization? I see "benchmark-guile"; is there a way to easily run it
> with an optimization enabled and disabled?  And maybe get some fancy
> charts and graphs, too?

Just running benchmark-guile before and after, I'm afraid... Once
they're in master, there's http://ossau.homelinux.net/~neil/.

Cheers,

Andy
-- 
http://wingolog.org/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]