unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: Mark H Weaver <mhw@netris.org>
To: Andy Wingo <wingo@pobox.com>
Cc: guile-devel <guile-devel@gnu.org>
Subject: Re: CPS and RTL
Date: Thu, 24 Jan 2013 04:28:05 -0500	[thread overview]
Message-ID: <878v7jnd5m.fsf@tines.lan> (raw)
In-Reply-To: <87libjhtk4.fsf@pobox.com> (Andy Wingo's message of "Thu, 24 Jan 2013 09:30:19 +0100")

Andy Wingo <wingo@pobox.com> writes:
>   * We should still compile Scheme to tree-il I think; it's convenient,
>     and other languages may well prefer a more direct-style IL as a
>     target.

I like CPS for later passes of the compiler, but it should not come
first.  The problem is that CPS fixes the order in which everything is
evaluated, such as the order in which procedure arguments are evaluated,
the order in which 'let' or 'letrec' initializers are evaluated, etc.
The fact that these orders are unspecified in the direct-style gives the
compiler freedom to choose an order that generates the best code, and
apparently this freedom can often result in significant gains.  Such
ordering decisions must be made before the conversion to CPS.

      Mark



  reply	other threads:[~2013-01-24  9:28 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-17 15:35 CPS and RTL Noah Lavine
2012-11-17 20:18 ` Stefan Israelsson Tampe
2013-01-24  8:30 ` Andy Wingo
2013-01-24  9:28   ` Mark H Weaver [this message]
2013-01-24 10:35     ` Andy Wingo
2013-01-24 10:38       ` Nala Ginrut
2013-01-24 13:34         ` Andy Wingo
2013-01-24 13:50         ` Noah Lavine
2013-01-24 15:12           ` Andy Wingo
2013-01-24 16:03             ` Noah Lavine
2013-01-25  4:38               ` Noah Lavine

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878v7jnd5m.fsf@tines.lan \
    --to=mhw@netris.org \
    --cc=guile-devel@gnu.org \
    --cc=wingo@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).